c語言刪除語句s j0,我不太懂,解釋一下

2021-03-27 13:49:55 字數 1051 閱讀 7669

1樓:千鋒教育

這是一個追加字元的表示式  ,用來想一個字串最後新增字元比如 :

char s[10]="123"

int j=3

int i=0;

s[j++]=s[i];s[j]='\0'//此句執行完後s=="1231"

2樓:金色潛鳥

j++ 是後加加。表示式裡j 不自增,出了表示式再自增1。

所以s[j++]=s[i]; s[j]='\0';

可以按步寫成 s[j]=s[i]; j=j+1; s[j]='\0'。

所謂刪除,版是指字串裡發生的權事。 s[j]='\0' ;也就是把字串結束符 放在 s[j] 位置,這樣字串 s 有效字串只算到s[ j] 以前, 後面的字元不起作用了。等於刪除了。

例如:

char s[12]="abcde12345"; // 原來的字串

int j=2,i=9;

printf("%s\n",s); // 輸出原來的字串 abcde12345

s[j]=s[i]; // 把s[9] 放到 s[2] -- 字元c 變字元 5

printf("%s\n",s);

j=j+1;

s[j]='\0'; // 刪除 s[j] 以後的

printf("%s\n",s);

執行上面語句,輸出為:

abcde12345

ab5de12345

ab5等於刪除了 cde1234

3樓:帶你看我小時候

s[j]=s[i];然後句末j++ (就是j+1的意思)

'\0' 是字串的結束符,任何字串之後都會自動加上'\0'

4樓:t君凡

將s[j]=s[i];j=j+1;

s[j]='\0'

5樓:劉江濤

現將s[i]中的值移入s[j]中,j自加1,然後將其中的值替換為結束符,原s[j]中的值就被刪除了。

c語言 解釋for語句,C語言 解釋for語句

輸入5後,執行第一個for 語句順序是i 1 i a 接著執行 中的語句 中又有一個for 語句 執行第二個for 語句順序是j 1 j a 因為1 5 執行printf 語句 輸出 因為for 為迴圈語句那輸出 後執行j 使i的值加1等於2,在執行j a 就這樣執行下去,直到j 6 不滿足j a ...

c語言中的for語句和ni語句,C語言中的for語句和n i 語句

n 這種形式是字尾自增1運算,表示先使用n值,然後n n 1自增1 i這種形式是字首自增1運算,表示先對i進行i i 1自增1,然後再使用i值 如果是單獨執行這樣的語句,兩者沒有區別,如 for i 0 i 輸出0 9 與for n 0 n 輸出0 9 這兩者都會迴圈10次,沒有差別。而下面的語句 ...

關於C語言IF語句

break結束迴圈,不在執行了。i 也不執行。return跳出迴圈進入下一次迴圈,i 也不執行還有這2句話 如果都需要if判斷 建議你寫到 規範 看起來也清楚好懂 i 0 while 1 1 break跳出迴圈,不在執行了。c 27成立,就break了,不成立i 跳出迴圈了 不執行了 當c 27時就...