虽然用字符指针变量和字符数组都能表示和处理字符串,但它们二者之间是有区别的,不应混淆。
(1)字符数组由若干个元素组成,每个元素中存放字符串的一个字符,而字符指针变量中存放的是字符串的首地址。
(2)初始化方式不同。对字符数组初始化要用stati‘c存储类别,在编译时进行。而对字符指针变量初始化不必加static,在实际执行时进行。
(3)赋值方式不同。对字符数组不能整体赋值,只能转化成份量,对单个元素进行。而字符指针变量赋值可整体进行。例如:
char s[10];
s= \"C++\";/*错,s是常量,怎能被赋值*/
(4)在定义一个字符数组时,编译时即已分配内存单元,有确定的地址。而定义一个字符指针变量时,给指针变量分配内存单元,但该指针变量具体指向哪个字符串,并不知道,即指针变量存放的地址不确定。例如:
char a[10];
char *p;
scanf(\"%s\",s);/*正确*/
scanf(\"%s\",p);/*非常危险,p的值动态*/
(5)字符指针变量的值可以改变,字符数组名是一个常量,不能改变。例如,有简单程序:
main()
{char s=\"china man\"
s+=6;
printf(\"%s\",s);
}
运行结果:man
分享到:
相关推荐
这样两者的区别就豁然开朗了,数组指针只是一个指针变量,似乎是C语言里专门用来指向二维数组的,它占有内存中一个指针的存储空间。指针数组是多个指针变量,以数组形式存在内存当中,占有多个指针的存储空间。 还...
指针变量,指针与数组, 指针与函数, 字符串与指针,指向指针的指针
10.4.2 使用字符串指针变量与字符数组的区别 28 10.5 函数指针变量 29 10.6 指针型函数 30 10.7 指针数组和指向指针的指针 31 10.7.1 指针数组的概念 31 10.7.2 指向指针的指针 34 10.7.3 main函数的参数 36 10.8 ...
9.1 1分钟彻底理解指针的概念 9.2 大话C语言指针变量 9.3 C语言指针变量的运算 9.4 数组指针(指向数组的指针) 9.5 字符串指针(指向字符串的
10.4.2 使用字符串指针变量与字符数组的区别 28 10.5 函数指针变量 29 10.6 指针型函数 30 10.7 指针数组和指向指针的指针 31 10.7.1 指针数组的概念 31 10.7.2 指向指针的指针 34 10.7.3 main函数的参数 36 10.8 ...
4. 指针变量 5. 操作指针变量 三、指针的几个相关概念 1. const属性 2. void型指针 3. 空指针和野指针 四、指向不同数据类型的指针 1. 数值型指针 2. 字符串指针 3. 指针数组与数组指针 4. 二维数组和指针...
9.1 1分钟彻底理解指针的概念 9.2 大话C语言指针变量 9.3 C语言指针变量的运算 9.4 数组指针(指向数组的指针) 9.5 字符串指针(指向字符串的
1. 指针变量作函数与变量作函数的区别 c语言规定实参变量对形参变量的数据传递是“值传递”即单向传递、只有实参传给形参,而不能有形参传给实参,在内存中实参与形参是不同的存储单元。在调用函数时,给形参分配...
9.1 1分钟彻底理解指针的概念 9.2 大话C语言指针变量 9.3 C语言指针变量的运算 9.4 数组指针(指向数组的指针) 9.5 字符串指针(指向字符串的
指针的概念 指针变量 指针与数组 指针的算术运算 行指针与列指针 练习1 二维数组的指针变量 指向一维数组的指针变量 指针与字符串 返回指针值的函数 指针数组 练习2
指针变量可以指向变量地址,数组,字符串,自然也可以指向函数了。已知每个函数在编译的时候,系统会分配给函数一个入口地址,函数名表示这个入口地址,定义指向函数的指针变量称之为函数的指针变量。 函数返回值...
1、探讨字符串指针变量与字符串数组的区别; 2、探讨指针变量的偏移与距离;
指针数组定义:如果一个 数组,其元素均为指针型数据,该数组为指针数组,也就是说,指针数组中的每一个元素相当于一个指针变量,它的值都是地址。 形式:一维指针数组的定义形式为:int【类型名】 *p【数组名】 [4]...
那么name是一个字符指针变量,注意它是一个变量,是可以进行四则运算的,它的值是可以改变的。所以: printf(%s,name+20); 没有问题。但是如果是 char name[20];那么name是一个地址常量,值是一个字符串的首地址,...
用字符串常量为字符指针初始化,其形式与字符数组的初始化类似,却有本质上的区别:字符数组获得字符串所有的字符,而字符指针获得字符串首地址,与字符串内的字符无关。 【例8.4】用指向字符串的指针变量完成两个...
● 数组和指针之间的关系 ● 引用的概念及声明方法,关于使用引用的几点初步建议 ● 如何在本地C++程序中给变量动态分配内存 ● 如何在CLR 程序中动态分配内存 ● 跟踪句柄和跟踪引用的概念,CLR 程序...
使用字符串指针变量与字符数组的区别 168 函数指针变量 169 指针型函数 170 指针数组和指向指针的指针 171 指针数组的概念 171 指向指针的指针 174 main函数的参数 176 有关指针的数据类型和指针运算的小结 177 有关...
9.1 1分钟彻底理解指针的概念 9.2 大话C语言指针变量 9.3 C语言指针变量的运算 9.4 数组指针(指向数组的指针) 9.5 字符串指针(指向字符串的