C語言字串,求大佬,C語言字串陣列的問題

2021-03-19 18:26:34 字數 1203 閱讀 8158

1樓:匿名使用者

在語句for(j = 0; s[j] != '\0';j++);中,j 記錄的是串s的字元個數,結束該迴圈時,s[j]恰好是'\0',在接下來的for迴圈中,第一個j--後,s[j]是串s的最後一個字元,而i為0,迴圈體將s[0]與s[j]進行交換,第二個j--是正常遞減,以便與i++相對應,交換s[i]和s[j]。

2樓:作文高手的奇葩

沒那個程式之類執行不好

c語言字串陣列的問題

3樓:匿名使用者

#include

int main()

;scanf("%s",a);

for(i=0; a[i] != '\0'; i++)for( j=0; j<5; j++) //修改:1:下標從0~4,共5個

return 0;}

4樓:兄弟連教育北京總校

每行結尾的 \ 僅僅是為了連線字串使用的,

如果一個字串過長,寫在一行比較不合適,

就在該行結尾處加上一個反斜槓 \ 就可以在下邊的行繼續寫這個字串,

如 "123456789abcdefg"

和"123456789\

abcdefg"

這兩種寫法是同樣的。

而根據text函式的特性

text ("text files (*.txt)\0*.txt\0") \

text ("ascii files (*.asc)\0*.asc\0") \

text ("all files (*.*)\0*.*\0\0")

又等同於

text ("text files (*.txt)\0*.txt\0ascii files (*.

asc)\0*.asc\0all files (*.*)\0*.

*\0\0")

所以你上邊寫的就等同於

static tchar szfilter=text ("text files (*.txt)\0*.txt\0ascii files (*.

asc)\0*.asc\0all files (*.*)\0*.

*\0\0") ;

確實是一個字元陣列,對於字串陣列的說法,我也不敢苟同。

5樓:

if(a[i]==b[j]) 是判定不是賦值

C語言字串

錯誤在註釋中給出了 程式正確執行 include void main else if str i 等號是 是賦值 else if str i 等號是 是賦值 j letter blank gantan printf n d n j 先分析一下你的 for i 0 str i 0 i 你應該改成 fo...

用c語言寫字串逆序輸出,用C語言寫 字串逆序輸出

逆序輸出有很多種,具體的實現方法取決於你題目的要求 1.如果只是要求逆序輸出,那麼可以採用類似的方法 void reverse char s 這種方法在s很長的情況下會一直遞迴到底,不是很好。2.如果需要將字串整個逆序在函式外面輸出,那麼可能希望採用返回字串指標的方式 實現如下 char rever...

字串中的空格,C語言字串中的空格算不算一個字元

copy這個函式,如果 s i 為 0 則退出迴圈是吧,那迴圈到hello和world中間那個空格那裡,那個空格難道不是 0 麼?如果是 0 為什麼還要繼續迴圈呢?你的疑問 空格ascii 碼是32,而 0 ascii 碼是0.字串的末尾胡 0 是自動加上去的,所以 0 和字元0又不一樣了,0的as...