為什麼編譯沒錯但打開文件失敗
① 為什麼編譯沒錯但運行不了呢
內存溢出的問題。t變數初始化一下:
int t=0;
這樣就行了。
② 請教一個c++問題,為什麼編譯沒錯。運行出錯
函數原型的參數類型與函數定義的參數類型不相同。
void infro_count(istream& in_stream,ofstream& out_stream,int& char_num,int& nblank_num,int& aplha_num);
函數原型的第一個參數類型是 istream;
void infro_count(ifstream& in_stream,ofstream& out_stream,int& char_num,int& nblank_num,int& alpha_num)
函數定義的第一個參數類型是 ifstream;
③ 為什麼編譯成功的程序用java.exe 運行卻顯示失敗呢
異常提示的很清楚,無法讀取文件輸入
我能想到的有兩種情況:
文件路徑錯誤,樓上已經給出了;
文件類型錯誤,不是每個.jpg的文件都是圖片的,這種情況一般是程序生成圖片錯誤,導致只有一個.jpg(或其他)的空殼,裡面沒有內容
④ 我KEIL 編譯沒錯誤,但DEBUG時,提示「error 56: can't open file」,不能打開目標文件,請教各位。
你的提問比較模糊,不好回答。編譯沒錯誤只是說明程序本身沒有語法錯誤。調試時還要用到相關晶元的動太鏈接庫,找不到時就會提示。同時應該會提示哪個文件,仔細看下提示信息,根據提示檢查器件驅動是否已安裝。
⑤ c語言有時候為什麼在編譯顯示沒錯誤,鏈接卻顯示有錯誤
估計是重定義一類的問題吧。。。當然也有可能編譯器與系統不兼容。
具體的話得看程序頭表符號重定位這些東西是不是出了問題。。
最直接的方法是閱讀代碼。。看代碼是不是哪裡出了問題,比如重定義,比如多個強符號。。
這里只有猜。。需要源代碼。。以及說明用來編譯鏈接工具。
⑥ 在使用VC時為什麼編譯時沒有錯誤,連接時有錯誤,不能打開文件
我們通常所說的編譯其實包含兩個部分:編譯和鏈接。
編譯是指把程序源文件編譯成目標文件,即vc下的.o文件。
鏈接是指把目標文件生成可執行文件。
鏈接的時候,如果某個函數只有聲明,但沒有實現,或者依賴第三方庫,但只提供了頭文件,沒有提供庫文件,或者庫文件的版本不對,都會導致鏈接錯誤,而這些錯誤,在編譯階段通常是不會報錯的。所以,你可以針對上面提到的幾點一一排除一下:
1,程序中所用到的自己寫的函數是否都已經實現;
2,如果使用了第三方庫,確認是否已經有了第三方庫,是否在工程設置中包含了庫文件,並且配置了庫文件搜索路徑,保證編譯器能找到所需要的庫文件;
3,如果使用了第三方庫,確認所使用的庫文件版本是對的。
如果上面這些都做好,基本上就不會有問題了。
⑦ 為什麼我的VC++在編譯時無錯誤,但在執行時卻打不開可執行文件呢
建議你把錯誤提示發上來。
不過大多數情況是這樣:你原先的那個同名的EXE程序沒有被自動刪除。
這樣做可以解決:你重新編譯了再執行,如果還是不行,再來次重新編譯再執行。如果一直不行,你就直接找到路徑,把原來那個EXE文件刪除了,然後重新編譯再執行,這樣不可能不行了。
⑧ 這個C語言簡單的文件操作代碼怎麼回事編譯沒有錯誤,但是運行就崩潰
編譯沒有錯誤只表示沒有最基礎的語法錯誤,但程序的邏輯錯誤是檢查不出來的,兩處有問題,一個是=NULL應該為==NULL,為啥就不解釋了吧,第二處是ch=getchar();
fputc(ch,fp);這兩行需要換下順序。