1樓:四舍**入
'\0'是字串陣列的結束標誌。
而0則是'\0'的ascii碼錶示,是第一個ascii碼,數字0的ascii碼是48,所以寫程式要用'\0'結尾,比如char a[3] = ,或者直接char a ="hi",編譯器都會認為是字串陣列,且以'\0'結束。
除錯程式時,可以看到記憶體裡面是0,這是ascii碼的表示,也可以看作是一個unsigned int型別。
2樓:小李無刀
確切說,字串結束標誌是ascii碼的0。而這個「0」是不能用顯示字元表示出來的,只有用轉義字元表示了。
\t,\n都是轉義字元,都是不能用普通顯示字元顯示的。它們表示一個字元,但不是字串結束字元。
字串的結束標誌是???
3樓:維維豆奶
字串的結束標誌是′\0′。
為了測定字串的實際長度,c++規定了一個「字串結束標誌」,以字元′\0′代表。在上面的陣列中,第11個字元為′\0′,就表明字串的有效字元為其前面的10個字元。也就是說,遇到字元′\0′就表示字串到此結束,由它前面的字元組成字串。
4樓:落楓秋痕
『\0』
字串是系統自動加上結束符的、
以c語言 字元陣列為例:
char a[50]=;
int i=0;
while(a[i]!='\0')
0是c語言字串結束標誌?
5樓:匿名使用者
這麼說吧,'\0'是字串陣列的結束標誌,而0則是'\0'的ascii碼錶示,是第一個ascii碼,數字0的ascii碼是48,所以寫程式你要用'\0'結尾,比如char a[3] = ,或者直接char a ="hi",編譯器都會認為是字串陣列,且以'\0'結束。你除錯程式時,可以看到記憶體裡面是0,這是ascii碼的表示,也可以看作是一個unsigned int型別。
6樓:
\0'就是 字串結束標誌。0不是
字串的結束標誌是?
7樓:天涯
『\0』
字串是系統自動加上結束符的、
以c語言 字元陣列為例:
char a[50]=;
int i=0;
while(a[i]!='\0')
c語言 字串怎麼加結束標誌
8樓:幻翼高達
需要準備的材料分別有:電腦、c語言編譯器。
1、首先,開啟c語言編譯器,新建一個初始.cpp檔案,例如:test.cpp,輸入問題基礎**。
2、在test.cpp檔案中,將「c[20]=strcat(a,b);」調整為:c[0] = '\0';strcat(c,a);strcat(c,b);。
3、編譯器執行test.cpp檔案,此時成功不通過for迴圈對字串c用puts進行了輸出。
9樓:灩麗
1、首先我們開啟c語言編輯軟體。
2、然後我們點開「檔案」,「新建」,進入介面以後,我們新建一個c的檔案。
3、我們要知道c語言中的字串結束標誌是字元『\0『。通常情況下我們有兩種辦法去輸出結束標誌。
4、直接使用字元『\0』來輸出結束標誌。
5、我們還可以利用ascii碼,'\0'的ascii碼是0,所以我們可以利用0x00來輸出結束標誌。
10樓:吉祥二進位制
c語言中的字串結束標誌是字元『\0』,它的ascii碼值是0。一般來說使用兩種該來加結束標誌。
1、使用字元'\0',比如下面的**
char sztest[3];
sztest[0] = 'a';
sztest[1] = 'b';
sztest[2] = '\0'; //這裡直接使用結束字元'\0'
2、使用ascii碼值來做為結束符,示例**如下。
#include
int main()
執行結果只輸出第1個字元t。
11樓:與子如初見
你的c[20] = strcat(a,b);這句是個錯誤語句。
c[20]代表的是c陣列的第20個元素,c陣列根本就沒有第二十個元素,存在越界。
加結束標誌的話這樣子加c[strlen(c)] = '\0';就ok。
12樓:匿名使用者
你輸入結束時gets()會自動加結束標誌'\0',puts是專門用來輸出字串的,你要的話用for輸出也沒問題呀。
還有strcat(a,b)函式是把a,b連線後賦值給a,返回頭指標,你直接賦給陣列c的第20個元素,前面的字元沒賦值,無論怎麼輸出都是亂碼。
13樓:匿名使用者
這個程式錯了一句話
c[20]=strcat(a,b);
strcat的定義是吧b連線到a後面
你要實現你的要求,只能這樣
strcpy(c,a); 先把a拷貝到c中strcat(c,b);再把b連線到c後面一般來說這些字串的函式,返回值不是字串如strcmp比較,返回-1 0 1的一個strcpy一般是返回拷貝的字元的個數
strcat一般也是返回前面連線完成後的字串的字元個數strcat自動加上結束符
gets也是自動加上結束符的,只要ab不超過9個字元
14樓:
gets自帶結束標誌的啊
字串陣列中每一個字串結束的標誌是什麼啊
15樓:溫清怡餘玟
對於char="chinese",在計算陣列長度時包不包括結束標誌'\0',那麼對於char=這種陣列呢?
***所有計算字串的長度都不包括結束標誌'\0',第2種情況同樣。
對於前一種情況,如果用strcpy將一個陣列複製到另一個陣列時,會否將結束標誌也複製過去呢?
***會
如果是,那麼在輸出複製後的陣列時遇到該結束標誌是否會終止?為什麼?
***會終止,因為有結束符。
如果不終止,那麼是輸出0還是空格呢?為什麼?
***會終止
字串陣列中每一個字串結束的標誌是什麼啊,輸入時。。。。。
16樓:匿名使用者
#include
main()
} 另外我想說,用
ifelse if
句式時else if表示當之前if條件不成立時再進行判斷,例如if(score<60)
else if(score<70)//score大於等於60且小於70
字串的輸入以什麼為結束標識?
17樓:
這同輸入語句和格式有關。
gets,fgets, 讀取一行,包括空格,空白,打入 enter 鍵,字串結束。
for (i=0;i<3;i++) scanf("%s",...); 用空格,空白,回車作分隔符都可以。
18樓:匿名使用者
在程式裡字串的結尾就是'\0'
但在人機互動的時候靠空格和回車來判斷使用者輸入的字串
c語言簡單字串結束標誌
19樓:甕瑗
'\0' 的ascii碼就是0,'0'的ascii碼是0x30,這就是區別。
printf函式自動識別'\0',遇到'\0'自動結束輸出,自己寫程式也可以,用一個char *的指標指向字串,讀取字元並把指標移到下一個字元,發現字元為'\0'結束操作。
20樓:
1、\0記憶體中就是0;0記憶體中是0的ascii碼,0是一個字元;
2、沒有空字元結束一說,只有空字串結束。如果判斷空字串,可以寫 if (c[0] == '\0') 或者寫 if (strlen(c) == 0) 都可以
21樓:匿名使用者
前一個是轉義字串,後一個是普通數字,'\0' 的ascii碼就是0,'0'的ascii碼是48.
判斷字串結束時是0還是,判斷字串結束時是! 0 還是
可以。你是用字元的 ascii 值 來判斷 字串結束。字串結束符 0 的 ascii 值 正好是 0。所以 用 0 判斷 和 用 0 判斷,結果一樣。用 0 用 0 完全是個人習慣。 姑且不論 0這種方式對不對,都是不應該,至少不提倡用的,就像你可以 int a 0 但是這種方式不好,通常都將指標初...
未結束的字串常量 求解
sql insert into 在試試你字串裡既然加了雙引號那就得用拼接的方式例如 username 希望能幫到你 這種拼接方式效率差,也容易產生遺漏之類的問題,建議用這樣的吧 sql string.fotmat insert into reg table reg username,reg pass...
輸入字元,再輸入以回車結束的字串 少於字元 ,在字串中查詢該字元如果找到
問明 include int main char a 80 b int i int k printf input chars for i 0 a getchar n i a 0 scanf c b for i 0 a 0 i if a b k i printf d k if k 1 printf n...