您的位置 首页 电子

《C与指针》读书笔记八

字符串是C语言中常用的一种数据形式。包含了ASCII码取值范围是0~127。ASCII是American Standard Code for Information Interchange(美国信

  字符串是C言语中常用的一种数据方式。包含了ASCII码取值规模是0~127。ASCII是American Standard Code for Information Interchange(美国信息**规范代码)。曾经我有一位年青的搭档,是一位爱国主义青年。每逢国家邦交出现问题时恨不得用中文编程。其实美国科学家效果也是归于全人类的。这么想也就豁然了。

  ASCII根本包含了编程所需悉数字符。并且每一个ASCII码与char型数据是等价的。比方:

  char ch;

  ch = 0x30;

  ch = 0x30与 ch = ‘0’ 是彻底等价的。由于字符0(不是数字0)的值便是48,也便是0x30。所以字符彻底能够进行算术运算和逻辑运算。

  比方 ch = ‘0’ + 2; 是彻底能够运算的。运算成果ch值为 ‘2’,也便是0x32。已然char数据是是0~127整型数据。那么逻辑运算也是彻底能够的。

  比方: ‘a’ > ‘b’ 运算成果为真。‘b > ‘a’成果就一定位假了。’2’是单个字符。假如将字符与数组结合起来在信息沟通方面当然十分有用。

  记住当年运用DOS6.22时,程序在运转过程中假如要输出一个提示,那么运用字符串当然十分便利。Printf函数的参数就有一个字符串。

  比方:

  char MSG[5] = { ‘h’, ‘a’, ‘p’,’p’, ‘y’};

  该数组与char MSG[5] = {0x68, 0x61, 0x70, 0x70, 0x79}彻底等价。能够经过下表索引到每一个元素。假如需求输出该数组,以下代码能够完成。

  #include

  char MSG[5] = { ‘h’, ‘a’, ‘p’,’p’, ‘y’};

  void main( )

  {

  char i;

  for( i =0; i < sizeof(MSG); i++)

  printf("%c", MSG[i]);

  printf("%n");

  for( i =0; i < sizeof(MSG); i++)

  printf("%0x ", MSG[i]);

  printf("%n");

  }

  编译后运转输出成果为:

  happy

  68 61 70 70 79

  字符串与数组的区别是字符串由一个隐含的完毕符’\0’。’\0’的值为0 ,是ASCII表的榜首个字符,即NULL。假如要界说一个字符串很简单。char MSG[6] = { ‘h’, ‘a’, ‘p’,’p’, ‘y’,’\0′};这样生命是没有任何问题。可是过于杂乱。一般的声明办法如是:char MSG[ ] = "happy"; MSG占用了6个字符串。由于’\0’也要占用一个字节空间。已然每个字符串都有一个完毕符。所以依据完毕符就能够判别一个字符串是否完毕。以下代码能够输出字符串happy.

  char MSG[ ] = "happy";

  void main( )

  {

  char i=0;

  while(MSG[i])

  printf("%c", MSG[i++]);

  }

  在本处咱们是为了着重’\0’值为0.其实以下代码更便利。

  void main( )

  {

  printf("%s", MSG);

  }

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/qiche/dianzi/115110.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部