购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

2.8.2 字符数组指针

用指针来描述一个字符数组是十分方便的。前面已经讲过,字符串是以字符数组的形式给出的,并且每个字符数组都以转义字符“\0”作为字符串的结束标志。因此判别一个字符数组是否结束,通常不采用计数的方法,而是以是否读到转义字符“\0”来判断。利用这个特点,可以很方便地用指针来处理字符数组。

例2-44 利用指针将一个字符数组中的字符串复制到另一个字符数组中去。

程序执行结果:

任何一个数组及其数组元素都可以用一个指针及其偏移值来表示,但要注意的是,指针是一个变量,因此像上例中的赋值运算s1=str、s2=0x1000等都是合法的;而数组名是一个常量,不能像变量那样进行运算,即数组的地址是不能改变的。例如上面程序中的语句:

char code str[]={"How are you?"};

是将字符串“How are you?”置到数组str[]中作为初值,而语句:

s1=str;

则是将数组str[]的首地址,即指向数组str的指针赋值给指针变量s1。如果对数组名进行如下的操作:

则都是错误的。 +3kOc+xG8iq3Mr+lx2NgECkxS20O3lnOLCuQ0QsOuSjj7ssNUiUbo2so9vVbXiGk

点击中间区域
呼出菜单
上一章
目录
下一章
×