C语言字符数组里,如何区分0和'\0'呢
C语言字符数组里,怎么区分0和'\0'呢?
C语言字符数组里,怎么区分0和'\0'呢?
#include<stdio.h>
#include<string.h>
int main(){
char a[5]={1,2,0,3,5}; //这里面是整型数
int i=0;
while(a[i]!='\0')
{
printf("%c\n",a[i]);
i++;
}
return 0;
}
这样的话遇到数字0就结束了,怎样才能打印所有的字符呢?
另外,字符数组里如果有0、'0'和'\0',该如何区分三者呢?
求高手指点~
------解决方案--------------------
for(int i=0;i<5;++i)
printf("%c",a[i]);
printf("\n");
------解决方案--------------------
C语言字符数组里,0和'\0'是一样的,因为他们的ACSII码都是 0.
当你打印的时候看你以什么形式去打印,如果是 %d,那会打印出0 如果是%c打印出 ‘\0’,本质上其实是一样的,一个是assic 一个是该assic码对应的字符
------解决方案--------------------
你确定是 30??? 不是 48或 0x30
C语言字符数组里,怎么区分0和'\0'呢?
#include<stdio.h>
#include<string.h>
int main(){
char a[5]={1,2,0,3,5}; //这里面是整型数
int i=0;
while(a[i]!='\0')
{
printf("%c\n",a[i]);
i++;
}
return 0;
}
这样的话遇到数字0就结束了,怎样才能打印所有的字符呢?
另外,字符数组里如果有0、'0'和'\0',该如何区分三者呢?
求高手指点~
C
数组
------解决方案--------------------
for(int i=0;i<5;++i)
printf("%c",a[i]);
printf("\n");
------解决方案--------------------
C语言字符数组里,0和'\0'是一样的,因为他们的ACSII码都是 0.
当你打印的时候看你以什么形式去打印,如果是 %d,那会打印出0 如果是%c打印出 ‘\0’,本质上其实是一样的,一个是assic 一个是该assic码对应的字符
------解决方案--------------------
你确定是 30??? 不是 48或 0x30