一个简单的问题 关于C++的

来源:百度知道 编辑:UC知道 时间:2024/06/04 04:25:09
#include <iostream.h>
#include <string.h>
void main()
{
char string[100];
cin>>string;
int length=0;
while(string[length]!=0)
length++;
cout<<length<<endl;
}
如果我把while(string[length]!=0)的0改为'\0'可以运行 为什么0也可以呢

这两种表示在数值上是等价的,只是类型不同,但是运用时通过编译器的默认类型转换就没有差别了

在ASCLL编码当中,‘\0'的值为0,所以你可以直接用0来代替‘\0’。

int型和char型在运算时是可以互相转换的。

我这里调试可以啊。。

一样的嘛