1樓:匿名使用者
結束符本身沒有,如果想打出來可以故
意多輸專
出一個\0
#include
int main()
;屬printf("%s\\0\n",s);
return 0;}
c語言 字串 程式設計 輸入字元結束時賦值'\0'
2樓:匿名使用者
while((s[i]=getchar())!='\n')i++; //這兩句是完成資料輸入,每輸入一個,i就會加1,直到遇到輸入回車符
s[i]='\0'; //
一、這句
回不是while迴圈的內容答,
二、此功能為:將回車符變成字串結束符(只是針對陣列的某一位進行操作,而不是改變整個陣列內容),你這個**中可見,回車符不是你想要的資料,只是輸入結束的一個判斷值。
3樓:匿名使用者
這是因bai為字串是以『
du\0'做為結束標誌的zhi。在記憶體中,比如字元dao串,「abc",實際上版
是四個位元組的空間
權abc'\0'。
在你的程式中:
while((s[i]=getchar())!='\n')i++;
s[i]='\0';
前面的while只是得到了字串的字元,而沒有結束標誌。
如果沒有最後一句s[i]='\0';
你的字元就不能正確結束。如果列印,可能是一大串的亂碼。只看你字串儲存空間後面的是什麼值。
4樓:瓜娃子
表示bai這個之後的
字元都不du是這個字串的
zhi。
也就是說,整個字串dao內容只是從開頭到'\0'
比如專:char s[10]="123";
printf("%s",s);//是123s[1]='\0';
printf("%s",s);//是1
另外屬,如果'\0'之後還有其他字元,則全部忽略,這是一種策略,c風格字串就是這樣。
如果你忘了加(一般系統幫你加),程式會崩潰
5樓:
『\0'是字串結束符,字串處理
函式遇到該標誌時,就會停止處理。
比如內在這段**中,容輸入abcda回車,s[5] = '\0'; 字元處理函式strlen(s) == 5,如果不置該值,這類函式就會異常,嚴重時,會系統崩潰。
字串結束符'\0'與字元'0'相等嗎
6樓:匿名使用者
字串結束符'\0'=0,不等於'0','0'表示數字0的字元形式。
c語言中。空格字元和字串結束標誌如何區分。都是'\0'。
7樓:匿名使用者
結束符 '\0' ascii是0
空格『 』 ascii是32
空格不是'\0'
8樓:匿名使用者
空格字元' '的ascii碼是:32
字串結束標誌'\0'符的ascii碼是:0
區別大呢!
9樓:匿名使用者
拿起你的錘子砸開你的電腦,一切就解決了。
C如何將yyyy HH mm格式字串轉換為datetime型別
datetime dt string inputstring yyyy mm dd hh mm datetime.tryparse string.format 00 inputstring out dt 可以不輸入ss,但是一個datetime不可能不存在ss。可以把ss預設設定為0 感覺沒有理解你...
C語言中,如何將陣列中的數值轉換成字串輸出
include void inttostr int i,char c,int len 需要注意的是,這裡沒有終結符,故需要知道陣列的 大小 陣列的大小是編譯時常量 char dest str 目標字串dest str char malloc sizeof char sizeof array 1 為字...
C怎麼把一堆陣列,轉化為字串,c 中如何將一維陣列轉換為字串
string filenames directory.getfiles strpath fileinfo fileinfo for int i 0 i filenames.length i string str for int i 0 i filenames.length i str str fil...