⑴ C語言檢查語法錯誤
修改如下:
#include <stdio.h>
#include <math.h>
int dt(int x,int y,int z)/*注意這里*/
{
int d;
d=(y*y)-(4*x*z) ;/*注意這里*/
if (d==0) return 0;
else if (d>0) return 1;
else return 2;
}
int gen(int x,int y,int z) /*注意這里*/
{
int t;
t=((-y)+sqrt(dt(x,y,z)))/(2*x);
return (t);
}
int main(void)
{int a,b,c,g,h;
printf("Please enter a,b,c.\n");
scanf("%d%d%d",&a,&b,&c);
g=dt(a,b,c);
h=gen(a,b,c);
if (g==0)
printf("The anser is x1=x2=%d.\n",h); /*注意這里*/
else
{if (g==1)
printf("The anser is x1=%d,x2=%d.\n",h,((-b)/a)-h); /*注意這里*/
else
printf("The anser is x1=%d,x2=%d.\n",h,((-b)/a)-h); /*注意這里*/
}
return 0; /*注意這里*/
}
⑵ C語言帶常量參數宏的編譯時參數檢查,有辦法實現嗎
紅屬於預處理,宏只是替換,不是函數,在編譯之前就完成替換了,不能參數檢查。
⑶ c語言編譯時有無語法錯誤
c語音應用編譯,可能會有語法錯誤的,包括還有一些其他的規則,如果沒有遵守,會報錯錯誤的類別的。
⑷ 編寫一個程序用來檢測C語言程序中的簡單語法錯誤
試著做了一下,感覺要做一個c編譯器很復雜。。。
尤其是對沒有學過編譯原理的來說。
你說做一個簡單的,不知要簡單到什麼程度。
本人喜歡把事情做好,所以沒有成功。
這里提供一點線索,你可以Google或查閱相關書籍:
編譯原理,語法樹
yacc lex
⑸ c語言編譯器怎麼檢查錯誤的
C語言編譯器有好多種
大同小異
有DEV-C++
VC6.0等
檢查錯誤
都能檢查
但只能檢查出語法錯誤
不能檢查出邏輯錯誤
⑹ c語言編譯時需要檢查嗎
你問的需要檢查,是檢查什麼?
C語言編譯時會檢查語法是否正確,類型是否匹配等。不檢查數組越界,死循環,無限遞歸等。
⑺ C語言怎麼檢查對錯
用微軟的VC6.0就可以,點編譯,就是那個小嘆號,如果是語法錯誤,就會提示你錯誤,在下面的框里提示你哪行錯誤,編譯不會通過,即你的程序無法運行。
然而這是很簡單的,最難的是邏輯錯誤,即編譯可以通過,而運行結果是錯誤的,和你預想的不一樣,而這種錯誤很難查找,只能用分步式運行,一行一行跟著程序執行看結果和過程,才能檢測出來。通常程序員最難解決的錯誤就是這種邏輯錯誤。
⑻ C語言如何檢查是否定義了某個函數如何讓缺少函數定義的程序在編譯期失敗
如果沒定義函數而使用,編譯是通不過的!!
⑼ c語言編譯程序的時候,檢查告訴我錯了,但沒告訴我錯在哪裡,在哪裡設置檢查錯誤的時候能夠告訴我錯在哪
vc6.0→一般直接左擊兩下【下方的那行錯誤提示信息】,就可以看到藍色標志;
如果不行就這樣做:
左鍵點擊一下【下方的那行錯誤提示信息】,再右鍵一下,彈出一個小窗口,看到
【「轉到錯誤....」】,滑鼠箭頭移動到那裡,左鍵點擊它一下,可以在你寫的程序中
看到錯誤代碼行的最左邊有一個藍色指示標志
⑽ c語言改錯 怎麼通過編譯程序檢查出語法錯誤
編譯器編譯時對你的代碼錯誤自動顯示出來,告訴你錯在何處,為什麼錯,你可以根據顯示的錯誤改正代碼