三国志13交涉技能:请教高手指针的问题

来源:百度文库 编辑:杭州交通信息网 时间:2024/04/30 18:23:31
char a[]="asdf";
char *str = a;
char **p = &str;
请问
p
*p
**p
它们当前的值是什么
请解释下
谢谢
char **p = &str;
分开是char **p;
*p= &str;
感觉是p=&*p
*p=&str
str=&a[]
试了一下是
p=&*p=&str
*p=str=&a[]
指点下

p:是字符指针str的地址
*p:是字符指针str的值即a[]的地址
**p:是字符指针str所指向的字符

呵呵,回答0的时候太多了。
*p就是那个asdf,是个字符串,
而**p是指向第一个字符,是个char,
至于p就是个地址值,多少就不知道了............。

首先,定义了字符数字,因此,a就是一个char *,
str和a是同样的东西
p则是指向这个字符串的指针,定义字符串数组的话可以考虑。

p是str这个指针变量的地址
*p就是str的值,也就是a的首地址
**p就是a的第一个元素的值,即'a'

char *str = a; 这是将a的首地址 赋给str也就是说str中的值是a的地址 char **p = &str;将str的地址赋给*p因为是地址所以p应该是指向指针的指针 也就是指向地址的地址 (二级指针)

悬赏分:0