本文目錄一覽:
c語言出現了一個問題,導致程序停止正常工作,請關閉程序
1、野指針,你使用的指針指向未知區域
2、scanf函數輸入整形、字元……的時候缺少了
3、緩衝區溢出,也就是說你使用數組時不經意間越界了
c語言錯誤怎麼辦?
如果發生錯誤的文件是由其他的C代碼文件添加進入當前工程而引起的,則Alt+F7進入當前工程的 Settings,選擇C/C++選項卡,從Category組合框中選中Precompiled Headers,選擇Not Using Precompiled headers。確定即可。
c語言錯誤的原因:
1 、編譯階段,執行的是對單個文件的轉換,從源代碼轉換成二進位文件。
2 、鏈接階段,將每個源文件轉成的二進位文件,及相關的系統庫文件共同打包生成可執行文件。
3 、從定義上可以看出,鏈接階段,出現錯誤有兩種可能: 函數中引用了不存在的函數;編譯環境有問題,導致ld出錯。
文件中C語言出現錯誤,該如何解決?
C語言中大部分錯誤是語法錯誤,語法總結如下。
對於新手來說,最開始犯的錯誤就是容易忘記寫Main函數頭。不管是C 還是java都是不能缺少的,一切語言從main開始。下面報錯會提示你找不到頭。
然後就是 「 ; 」 號了,雖然很不起眼但是卻很重要,缺少了就不可以。不僅僅是缺少了不行就是你輸入的是中文狀態下的分號依然不可以,C語言對中文還是很敏感的。
再就是大括弧的封閉問題了,很多同學剛剛寫程序的時候往往只寫上一半大括弧,把下一半大括弧忘記了。
有的程序要求需要輸出東西,這時候你卻把printf語句忘寫了,這是一種大意,這個失誤,編譯軟體不會給你報錯。
附上一張運行正確的圖,做個參照。
C語言運行結果有問題,程序無錯誤
#include stdio.h
#include math.h
void main(){ double a,b,c,p,q,x,x1,x2;
scanf(“%lf,%lf,%lf”,a,b,c); //按原先設計需要輸入: a=1,b=2,c=1,否則賦值有問題
x=b*b-4*a*c;p=-b/(2*a);q=sqrt(x)/(2*a);x1=p+q;x2=p-q;
printf(“p=%5.2lf,q=%5.2lf\n”,p,q); //如同scanf這裡也需要用%lf
printf(“x1=%5.2lf,x2=%5.2lf\n”,x1,x2);
}
原創文章,作者:EWCI,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/141267.html