c語言錯誤問題,c語言執行出錯什麼原因

時間 2022-09-03 08:30:05

1樓:匿名使用者

xzx.c(6) : error c2143: syntax error : missing ';' before 'type'

xzx.c(7) : error c2065: 'p' : undeclared identifier

xzx.c(7) : warning c4047: '=' : 'int ' differs in levels of indirection from 'int *'

xzx.c(9) : error c2065: 'i' : undeclared identifier

xzx.c(11) : error c2109: subscript requires array or pointer type

xzx.c(11) : error c2106: '=' : left operand must be l-value

xzx.c(12) : error c2109: subscript requires array or pointer type

xzx.c(12) : error c2106: '=' : left operand must be l-value

xzx.c(16) : error c2065: 'x' : undeclared identifier

xzx.c(16) : error c2109: subscript requires array or pointer type

xzx.c(17) : error c2065: 'j' : undeclared identifier

xzx.c(17) : error c2109: subscript requires array or pointer type

xzx.c(17) : error c2109: subscript requires array or pointer type

xzx.c(17) : error c2106: '=' : left operand must be l-value

xzx.c(18) : error c2109: subscript requires array or pointer type

xzx.c(18) : error c2109: subscript requires array or pointer type

xzx.c(18) : error c2106: '=' : left operand must be l-value

xzx.c(20) : error c2109: subscript requires array or pointer type

執行 cl.exe 時出錯.

xzx.obj - 1 error(s), 0 warning(s)

這樣報錯的。。。。

2樓:匿名使用者

我執行了一下,沒出現編譯錯誤。你用的什麼編譯器啊!

3樓:晒白的黑馬

沒有報錯啊```你重新開啟試試````

c語言錯誤問題

4樓:

for(i=0;s1[i]!='\0';i++)——形參是s11,這裡卻是s1。

if((s1[i]+'0')!=0)——形參是s11,這裡也是s1。

s1[s]=s11[i];——這時還是s1。

for(j=0;s2[j]!='\n';j++)——形參是s22,這裡卻是s2。

if((s2[j]+'0')!=0)——形參是s22,這裡也是s2。

s2[t]=s22[j];——這裡又出現了個s2。

if(strlen(s1)else if(strlen(s1)=strlen(s2)){——s1、s2也應該是s11、s22吧?=應該是==吧?

if(s1[i]else if(s1[i]>s2[j])——也就是s11[i]>s22[j]吧?

也應改成

以上改後,應該可以通過編譯了。沒有研究邏輯是否正確……

5樓:鉞琴軒

程式執行在記憶體中; 系統在程式執行之前會在記憶體中先給程式畫出一個空間 這個空間有些來存放**的;有些來存放執行時的變數,還有些.... 這個空間有一個區間使用來存放執行時的變數什麼的 段錯誤 就是 程式執行時,變數訪問越界一類的問題... 可能...

6樓:匿名使用者

為什麼沒有標頭檔案和主函式的?只有單單字元函式的。還有你定義s1、s2為字元,怎麼會變成字元陣列s1[i]、s2[j]呢

c語言錯誤問題

7樓:匿名使用者

#include

int transform(char *, char *, char *);

void turn(char *, int, int);

int main()

return 0;

}char tolower(char c)int transform(char s1, char s2,char s)

}return 0;

}void turn(char s,int i, int m)}只保證編過,對錯自理吧

c語言執行出錯什麼原因

8樓:歡樂多

for (i=0,sum=0;i<10;++i,sum+=i);

另外main 打錯了

9樓:

編譯沒有錯是因為你寫的mian函式的語句符合c規範,而連結有錯誤是因為c必須有一個入口函式或叫主函式main(),而你這裡卻沒有。

10樓:vs坑爹的號

編譯沒出錯表明的是語法是正確的!而連線的錯誤是因為邏輯性的問題,出現了沒有解決的外部引數。按照你的意思,應該是求1到10的和。

那麼在for迴圈這裡是肯定有問題的。還有int只是定義了變數,但是變數的值是隨機的,所以按照你這樣的做法是可能進入不到迴圈的。應該對變數初始化

正確的寫法是這樣的:

int i,sum=0;

for(i=0,i<=10;i++)

sum=sum+i;

printf("sum=%d\n",sum);

還有main也寫錯了

11樓:匿名使用者

如果是新手,不建議這麼寫,尤其以後和幾個人合作,要知道豬一樣的隊友之可怕!

for迴圈結構中,建議**結構清晰,講sum放在for迴圈的大括號中吧。

for(i = 0; i < 10; i++)

12樓:匿名使用者

首先是 void main()

再是 for(i=0,sum=0;i<10;sum=i) 你寫的**中 i, 是不允許的

這就是那兩個錯誤,我不知道你究竟想完成什麼功能,所以只幫你挑出錯誤

13樓:

main不是mian

c語言小問題 段錯誤是什麼?

14樓:匿名使用者

1. 段錯誤一般bai是當你訪問了未

du申請的記憶體或非法的zhi記憶體時產生的dao。主要還專是程式的記憶體管理有問題。屬

2. 其實開啟檔案是將檔案指標讀到一個記憶體中,來進行操作。lz的這種情況,檔案路徑有問題,就會使程式中記憶體的讀入產生問題,產生斷錯誤。

3. 建議lz上網搜尋關鍵字「c++記憶體管理」,再進一步深入這個問題。

15樓:匿名使用者

程式抄執行在記憶體中;

系統在襲程式執行之前會在內bai存中先給程式畫出一個du空間這個空間有zhi些來存放dao**的;有些來存放執行時的變數,還有些....

這個空間有一個區間使用來存放執行時的變數什麼的段錯誤 就是 程式執行時,變數訪問越界一類的問題...

可能出現的原因是:

陣列下標越界

動態分配記憶體的指標被double free了(釋放兩次了)

16樓:無法無天

%d表示只讀取數字,你按q回車之後,緩衝區的q沒有被scanf讀走,而被scanf一直檢測,並跳過,所以就成了死迴圈

17樓:sunbelt銘記

fr應該是0x00,當你訪問0x00時必定會出現段錯誤。因為訪問不到0x00對應的檔案描述符。

18樓:匿名使用者

指訪問了不可訪問的記憶體

c語言錯誤

C語言問題為啥會出錯,c語言執行出錯什麼原因

陽光的雷咩咩 printf d z 璐人釔 printf d z 這樣 c語言執行出錯什麼原因 歡樂多 for i 0,sum 0 i 10 i,sum i 另外main 打錯了 編譯沒有錯是因為你寫的mian函式的語句符合c規範,而連結有錯誤是因為c必須有一個入口函式或叫主函式main 而你這裡卻...

c語言執行出錯什麼原因

歡樂多 for i 0,sum 0 i 10 i,sum i 另外main 打錯了 編譯沒有錯是因為你寫的mian函式的語句符合c規範,而連結有錯誤是因為c必須有一個入口函式或叫主函式main 而你這裡卻沒有。 vs坑爹的號 編譯沒出錯表明的是語法是正確的!而連線的錯誤是因為邏輯性的問題,出現了沒有...

c語言順序表執行錯誤

從你的螢幕輸出可以看出來。最後一次操作選擇了1.就是呼叫insert 是在insert的函式裡出錯的。你從螢幕輸入1 2 告訴函式要在第一個元素之前插入2這個值。看這裡 q l.elem i 1 q指向要插入的位置 for p l.elem l.length 1 p q p p指向最末一個元素,結束...