问题描述
- 关于extern char *arr[];编译报错的问题
-
#include
#includeextern char *arr[];//在这行报错
int main(){int i=0; while(arr[i++]) printf("%sn",arr[i]); system ("pause"); return 0;
}
用VS2010编译这段代码时报错:
IntelliSense: 不允许使用返回数组的函数
解决方案
通过论坛求助,编译已不再报错,以下为修改后代码:
extern char *arr[];
int main(){
int i=0;
while(arr[i++])
printf("%sn",arr[i]);
system ("pause");
return 0;
}
#include <stddef.h>
char *arr[4] = {
"1",
"2",
"3",
NULL
};
问题中之所以报错,是因为arr[]数组未初始化和未定义
时间: 2024-09-07 11:12:22