C语言中,利用宏定义一个字符串和字符数组定义的字符串其末尾都会自动添加\0字符
来源:互联网 发布:windows应用程序编程 编辑:程序博客网 时间:2024/05/07 12:56
C语言中,
利用宏定义一个字符串#define MYPHONE "AT+CMGS"
字符数组的方式来定义一个字符串unsigned char SMS[]="HELLO, WELCOME TO RCCTS!";
问题:这两种字符串定义方式下,在最后末尾都会自动添加字符'\0'吗?
以下是验证程序
#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必须为小写
}
运行效果图:
- C语言中,利用宏定义一个字符串和字符数组定义的字符串其末尾都会自动添加\0字符
- C语言定义字符串和字符数组
- C语言中字符数组和字符串定义和初始化的问题
- C语言中二维字符数组的定义和初始化
- C语言中二维字符数组的定义和初始化
- C和java中关于字符串与字符数组的定义和转化
- C语言中字符串和字符数组
- C语言的字符数组(字符串)的定义与初始化
- C指针和数组:定义为字符串指针,声明为字符数组的后果
- 定义一个字符串类DelSameStr,从左到右对字符串中每个字符删除其后所有相同的字符,只留下第一次出现的那一个。例如,若字符串为”cocoon”,删除重复出现的字符后,其结果是字符串”con”
- c语言中字符串与字符数组
- C语言 字符数组和字符串
- C语言字符数组和字符串注意
- 29.C语言字符串和字符数组
- C语言字符数组和字符串
- 65 C语言字符数组和字符串
- c语言字符串和字符数组
- C语言字符数组和字符串
- XDC介绍
- win 7 SQL2008 附加数据库提示 5120错误
- 大胆、可怕又迷人的Graph Search:Facebook发现引擎的内幕
- win7下android开发环境搭建
- 周鸿祎:做产品体验先把自己切换到二傻子模式
- C语言中,利用宏定义一个字符串和字符数组定义的字符串其末尾都会自动添加\0字符
- 头脑风暴之精益画布
- 用组合数学的方法证明相似
- experiment: 注册表中保存的共享文件夹信息
- 闯迷宫
- 单词排除集
- C程序设计课程-2012电子信息 第四次上机实验
- 使用LaTeX按IEEE模板写论文时的参考文献管理方法(BibTeX使用小结)
- 获取Android的Java源代码并在Eclipse中关联