C語言中,利用巨集定義一個字串和字元陣列定義的字串其末尾都會自動新增\0字元
阿新 • • 發佈:2019-02-12
#include <stdio.h>
#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必須為小寫
}
#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必須為小寫
}