char类型保存小整数
也就是说,无论时char型数组还是int 型数组,它们的元素都是存储着一个整数(至少在直接用"="赋值时是这样明显的.(但存储的数字最大值时有别以及每次读写的字节数要注意(尽管数字较小时两者均可胜任存储工作).
#include <stdio.h>
int main()
{
int m[4];
char c[4];
/*格式符%d灰度入4字节(一般的)
scanf("%d", &m[0]); printf("%c\n", m[0]);
//如果数字char数组长度不够4,可能导致stack corrupt
scanf("%d", &c[0]); printf("%c\n", c[0]);
scanf("%c", &m[0]);//无法用满一个元素的内存(4字节),只能用到一个字节
printf("%c\n", m[0]);//%c只能读取一个字符,用一位数去试;(打印第一个字符)
printf("%d\n", m[0]);//乱七八糟的数*/
/*char型, 只要数值1字节范围内,就可以1个字节存1个数。
例如:*/
char s[10] = { 31, 32,33,34,35,36,37,38,39,40 };
int i;
for (i = 0; i < 10; i++)
printf("%d ", s[i]);//在调试的监视窗口中看到s[i]的值包括两部分:十进制的数值+'乱码字符'
/*打印:31 32 33 34 35 36 37 38 39 40*/
return 0;
}


浙公网安备 33010602011771号