int 和 char的问题

来源:百度知道 编辑:UC知道 时间:2024/05/14 04:22:55
int i,j; /*定义循环控制变量*/
int str; /*存储字符串的长度*/
char ch; /*存储当前取得的字符*/
for(i=0;i<maxline;i++) /*以行为单位获取字符*/
{
str=strlen(xx[i]); /*求得当前行的字符串长度*/
for(j=0;j<str;j++) /*依次取每行的各个字符*/
{
ch=xx[i][j]*11%256;
if(ch<=32 || ch>130)
continue; /*如果计算后的值小于等于32或大于130,则该字符不变*/
else
xx[i][j]=ch; /*否则将所对应的字符进行替代*/
}
}

如果ch和str定义调换了会影响结果吗?
就是ch定义为int而str定义为char
xx[i][j]可以输出字符吗

在你上面的程序里面,变量定义为char和int都是可以的,执行效果也相同。

事实上,除了字符串以外,所有的char定义都可以使用int,实际上定义为char在内存里面也是至少要占用int的空间,因为计算机分配内存一般是要按照字长对齐的。

哪些int的变量可以定义为char呢,就是只要变量在使用中的值都不大于127,这样所有的int变量都可以定义为char。