错误:'outList'在此函数中未初始化使用[-Werror = uninitialized]

时间:2015-04-15 17:02:43

标签: c pointers

我正在编写一个程序用于我的C类介绍,并在尝试使用gcc编译时不断收到一些警告。

这是我的代码:

char **outList;
*outList = strdup(cloudDevice);
printf("this is device XML message: %s",*outList);

任何想法为什么?谢谢

2 个答案:

答案 0 :(得分:3)

它抱怨是因为你使用了一个未初始化的指针,你在指向任何地方之前引用outList

为什么使用char **而非char *

char *outList;

outList = strdup(cloudDevice);
printf("this is device XML message: %s", outList);

答案 1 :(得分:0)

我明白了!我不得不使用malloc

char **outList = malloc(sizeof (char **) * 256) ;  
outList = strdup(cloudDevice);
printf("this is device XML message: %s",*outList);