c语言中,可以将什么值赋值给指针变量?
变量地址:int*p;inta;p=&a;另一个指针:int*p1,*p2;inta;p2=&a;p1=p2;数组名:inta[10];int*p;p=a;基本上所有地址都可以赋值给指针变量
c语言中字符串怎么赋值?
C语言中,字符串的赋值主要有两种方法,第一种是通过指针的方式直接赋值,第二种是通过数组直接赋值。
1、指针式赋值。
通过程序的运行情况,可以知道:char *p = "hello";这种字符串的赋值方式是完全没有问题的。要理解这种赋值方式,首先得理解双引号(特别注意:这个是双引号,不要赋值的时候给弄了个单引号)在这个语句中做了什么工作。双引号主要做了3个工作,分别是:
(1)申请了空间(在常量区),存放了字符串。
(2)在字符串尾加上了“\0”。
(3)返回地址。
这里所返回的地址就赋值给了char *类型的指针变量p。
2、通过字符数组直接把字符串赋值。

