C语言字符型char和整型int的关系和示例
 1、字符就是整数
   字符和整数没有本质的区别。可以给 char变量一个字符,也可以给它一个整数;反过来,可以给 int变量一个整数,也可以给它一个字符。
char 变量在内存中存储的是字符对应的 ASCII 码值。如果以 %c 输出,会根据 ASCII码表转换成对应的字符,如果以 %d 输出,那么还是整数。
int 变量在内存中存储的是整数本身,如果以 %c 输出时,也会根据 ASCII码表转换成对应的字符。
也就是说,ASCII 码表将整数和字符关联起来了。
char类型占内存一个字节,signed char取值范围是-128-127,unsigned char取值范围是0-255。
如果整数大于255,那么整数还是字符吗?
描述再准确一些,在char的取值范围内(0-255),字符和整数没有本质区别。
字符肯定是整数,0-255范围内的整数是字符,大于255的整数不是字符。
示例
/*
 * 程序名:book68.c,此程序演示字符与整数的关系
 * 作者:C语言技术网(www.freecplus.net) 日期:20190525
*/
#include <stdio.h>
int main()
{
  char a =  ‘E‘;
  char b =  70;
  int  c =  71;
  int  d = ‘H‘;
  printf("a=%c, a=%d\n", a, a);
  printf("b=%c, b=%d\n", b, b);
  printf("c=%c, c=%d\n", c, c);
  printf("d=%c, d=%d\n", d, d);
}运行效果
在ASCII码表中,E、F、G、H 的值分别是 69、70、71、72。
2、为什么C语言需要字符类型
既然char的本质是整数,那C语言中为什么还需要char类型呢?
因为字符的个数不多,而char型变量占用的存储空间比int型变量小,所以用char型变量表示字符,为编程带来了方便。
3、版权声明
C语言技术网原创文章,转载请说明文章的来源、作者和原文的链接。
来源:C语言技术网(www.freecplus.net)
作者:码农有道
如果这篇文章对您有帮助,请点赞支持,或在您的博客中转发此文,让更多的人可以看到它,谢谢!!!
相关推荐
  徐建岗网络管理    2020-07-28  
   lynjay    2020-06-14  
   AaronPlay    2020-06-13  
   ILVNMM    2020-10-26  
   PinkBean    2020-08-19  
   Seandba    2020-08-16  
   88384957    2020-06-12  
   herohope    2020-06-10  
   adwen00    2020-06-09  
   KilluaZoldyck    2020-06-06  
   hitxueliang    2020-06-05  
   lightindark    2020-06-03  
   baishuwei    2020-06-03  
   jediaellu    2020-05-31  
   twater000    2020-05-29  
   ItBJLan    2020-05-11  
   韩学敏    2020-05-09  
 