c语言 字符串数组末尾,C语言中,利用宏定义一个字符串和字符数组定义的字符串其末尾都会自动添加\0字符...
利用宏定義一個字符串#define MYPHONE "AT+CMGS"
字符數組的方式來定義一個字符串unsigned char SMS[]="HELLO, WELCOME TO RCCTS!";
問題:這兩種字符串定義方式下,在最后末尾都會自動添加字符'\0'嗎?
以下是驗證程序
#include
#define MYPHONE "AT+CMGS"
unsigned char SMS[]="HELLO, WELCOME TO RCCTS!";
unsigned char *String;
unsigned char i=0;
void main()
{
printf("**************this procedure is to confirm \\0 's exist****************\n");
/********************************驗證MYPHONE字符串末尾是否有\0字符*************************/
String=MYPHONE;
while(*String)?????????????? //當*String所指向的字符等于\0時跳出循環
{
i=*String;
printf("%c", i);
String++;
}
if(*String=='\0'){????????? //再次確認字符串的末尾是否有\0字符存在
printf("\\0");????????? //有則打印出來
}else{
printf("**");????????? //沒有則打印**
}
printf("\nMYPHONE=%s\n", &MYPHONE);????????? //打印字符串 這里%s的s必須為小寫
/**************驗證SMS字符串末尾是否有\0字符****************/
String=SMS;
while(*String)?????????????? //當*String所指向的字符等于\0時跳出循環
{
i=*String;
printf("%c", i);
String++;
}
if(*String=='\0'){????????? //再次確認字符串的末尾是否有\0字符存在
printf("\\0");????????? //有則打印出來
}else{
printf("**");????????? //沒有則打印**
}
printf("\nSMS=%s\n", &SMS);????????? //打印字符串 這里%s的s必須為小寫
}
運行效果圖:
總結
以上是生活随笔為你收集整理的c语言 字符串数组末尾,C语言中,利用宏定义一个字符串和字符数组定义的字符串其末尾都会自动添加\0字符...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux umount swap,挂载
- 下一篇: c语言图片合并 代码,帮个忙,合并代码