作者qxxrbull (qxxrbull)
看板C_and_CPP
標題[問題] 缺少標頭檔pch.h
時間Sun Mar 24 22:49:15 2019
開發平台(Platform): (Ex: Win10, Linux, ...)
win10
編譯器(Ex: GCC, clang, VC++...)+目標環境(跟開發平台不同的話需列出)
VS2017 MSVC
DEV C++ GCC
額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)
無
問題(Question):
程式在DEV C++可以編譯過並正確執行
但是在MSVS上會顯示
C1010 尋找先行編譯標頭檔指示詞時碰到未預期的檔案結尾。
您的原始檔中是否忘了加上 '#include"pch.h"'?
餵入的資料(Input):
a=5 , b=10
預期的正確結果(Expected Output):
交換前
a=5 , b=10
交換後
a=10 , b=5
錯誤結果(Wrong Output):
如上
程式碼(Code):(請善用置底文網頁, 記得排版,禁止使用圖檔)
https://www.codepile.net/pile/xM5ZqZLZ
補充說明(Supplement):
只是一個很簡單的用C寫的swap而已
但是MSVS就是不給我過編譯
手動加了pch.h就跳出缺少頭文件
DEV C++/GCC可以過並完全正常執行,不清楚MSVS/MSVC是有什麼特別的要求?
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 150.116.180.142
※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1553438960.A.174.html
→ jerryh001: 開專案的時候要選C++的空專案 03/24 23:15
→ qxxrbull: 奇怪 用另一台電腦MSVS2019就不會 03/25 00:09
→ qxxrbull: 好像是這台環境太雜了 裝了一堆工作負載 03/25 00:10
→ qxxrbull: 網路上有人說加入stdafx.h能解決 但我一樣沒辦法 03/25 00:10
→ qxxrbull: 我都是選win主控台應用程式開專案 03/25 00:11
推 moebear: VS它的設計 有先行編譯的標頭黨 可以加快編譯時間 03/25 01:48
→ moebear: 專案屬性可以把這個功能關掉 03/25 01:48
→ moebear: 以前叫做stdafx 改版之後叫pch.h 03/25 01:48
→ moebear: 如果新開一個專案這一行會預先寫好 03/25 01:49
推 moebear: 開新專案把程式碼複製進去或是直接從屬性把它關掉 03/25 02:03
→ moebear: 或是把他加進標頭檔 指定檔案路徑給他 03/25 02:03
推 lylu: 去Property->C/C++->Precompiled Headers裡面選Not Using Pr 03/25 10:18
→ lylu: ecompiled Headers 03/25 10:18
https://i.imgur.com/hOoQSrr.png
解決了 上來回報一下
看起來是他不小心用到其他專案的pch.h才出問題
※ 編輯: qxxrbull (140.137.149.253), 03/25/2019 10:51:15