首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

二重指针和字符数组和字符串指针有关问题

2012-05-10 
二重指针和字符数组和字符串指针问题#include stdio.hint main(int argc, char *argv[]){char string[]

二重指针和字符数组和字符串指针问题
#include <stdio.h>


int main(int argc, char *argv[])
{
char string[] ="helloworld"; 
char**p = &string;

getch();
return 0;
}

char **p =&string有什么问题?
我调试的时候显示p是错误的指针

而这么赋值就是ok的
int main(int argc, char *argv[])
{
char *string ="helloworld"; 
char**p = &string;

getch();
return 0;
}

帮忙解答下 
谢谢


[解决办法]
char string[] ="helloworld";
这里定义了一个数组,也就是说string变量的类型是char[11],
那么&string的类型就是 char(*)[11],
而char**p,中p的类型是char**,试图char(*)[11]赋值给char**类型当然是错误的。
同理分析后面的
[解决办法]
数组是这样存的:string:[][][][][][][][][][][]...
指针不一样:p:[] ----->[][][][][][][][][][][]...

热点排行