Ⅰ c語言程序不完整,調試會報錯嗎
首先,各種符號例如括弧要對稱。如果你只能一段正確的程序拿出一小段完整的,有時候也會報錯,因為有的變數沒有定義,或函數,引用沒有定義或寫等。
Ⅱ 為什麼我C語言調試不了
你好,可能是用戶許可權不夠。不知道你用的是不是 Visual Studio 6.0 版本的呢?那個版本是 98 年的版本,默認是把程序放在 C:\Program Files\Microsoft Visual Studio\MyProjects 裡面,嘗試著在建立程序的時候更改一下 Location 屬性,移動到「我的文檔」里會比較適合。
Ⅲ 為什麼有時候C語言編程調試得不出正確結果,退出後再進調試就可以得出正確結果了
一個程序同樣輸入,同樣處理流程,輸出不同於預期的多種結果。除非程序運算涉及隨機數。否則就說明這個程序不可控,是存在錯誤的。
程序有錯,不一定是代碼寫錯了,也有可能是邏輯錯誤,條件判斷有漏洞,地址訪問越界。
像你這種情況,很大可能有以下錯誤:
1、變數沒有給初值,就直接參與循環運算,變數初值為隨機值。
2、循環訪問數組,超出數組維度,訪問到未定義的地址內容。
3、多個函數調用了同一個地址(比如同一個全局變數,或傳遞了同一個變數地址),並在多個函數中都修改了這個變數,多次調用函數的邏輯寫錯了,造成變數值發生預測外的變化。
Ⅳ C語言 怎麼調試程序
一、在keil中調試c語言程序
1、打開我們的程序,點擊菜單欄右側的start/stopdebug..按鈕,進入調試模式,如下圖。
Ⅳ C語言程序按調試和運行沒成功,提示如圖
提示缺少的文件222c.exe是你的項目編譯生成的。重新編譯下,看是不是報錯了?
int main() {
// your code
}
Ⅵ C語言調試步驟
一、在keil中調試c語言程序
1、打開我們的程序,點擊菜單欄右側的start/stopdebug..按鈕,進入調試模式,如下圖。
Ⅶ 我的C語言程序做出來了,調試的時候沒有錯誤,但就是沒結果,不知為什麼
#include <stdio.h>
int main ()
{
int a,b,c;
a=1;
b=2;
while (b<=100)//親,看這里哦,while語句後面直接跟花括弧哦,而不是加個分號
{
c=a+b;
b=b+1;
}
printf("%d\n",c);
return 0;
}
呵呵,初學者吧,差不多呀我們,我的Q,644638540,以後多交流交流經驗哈
Ⅷ 求救!C語言高手回答,調試就是不通過~~~~~
錯誤有以下幾點:
1.你的函數的形參里有常數,這樣是不正確的,把形參和主函數里傳遞的常數去掉就行了,既然是常數可以直接使用,沒必要傳遞.
2.prime函數最後少一個}
3.sort函數中變數n未定義
4.sort函數中形參是array[],但使用時卻寫成了a[],把形參改成a[]就可以了
5.max函數最後少一個}
6.delete函數中變數j未定義
7.delete函數最後少一個}
這是語法上的問題,演算法我沒有具體看,你編譯後再試試吧.
Ⅸ 為什麼c語言無法調試
沒有打斷點,所以沒有調試成功
Ⅹ c語言程序調試不出結果
給你講一下程序1的輸出結果怎麼來的,其他的可以自己分析。
int
i=100;
printf("%d\n%d\n%d\n%d\n",++i,--i,i++,i--);
1
2
3
4
vc++的printf語句是從右向左掃描參數的。在上面的輸出語句中
(1)編譯器首先掃描第四個參數i--,i本來的值是100,所以第四個%d輸出100,--操作不會馬上被執行,要等printf語句執行完後才執行,此時i的值仍是100。
(2)然後掃描第三個參數i++,同樣輸出100,,++也操作不會馬上被執行,要等printf語句執行完後才執行,i的值仍是100
(3)接著掃描第二個參數--i,--i被馬上執行,i的值變成99,然後被輸出。
(4)掃描第一個參數++i,++i被馬上執行,i的值變成100,然後輸出。
(5)printf語句執行結束,i執行剛才沒有被馬上執行的--操作,i的值變為99
(6)--操作執行結束,i執行剛才沒有被馬上執行的++操作,i的值又變回100。
所以如果你在程序1的printf語句下面再加一句printf語句輸出i的值,會發現i的值仍然是100;而如果你在程序2的printf語句下面加一句printf語句輸出i的值,會發現i的值變成了101;如果你在程序3的printf語句下面加一句printf語句輸出i的值,會發現i的值變成了99!說得夠明白了吧,自己去試一下?