我试图在 Turbo C 中运行这段代码,但在第 9 行遇到了非法初始化 我做错了什么???
#include<stdio.h>
#include<conio.h>
void main()
{
int names[] = {23,23,34};
int *nam[] = { names, names+1 , names +2};
char *temp;
clrscr();
printf("%u" , (nam));
getch();
}
最佳答案
你遇到这个问题是因为你的编译器已经过时了。在 17 年前被废除的旧 C 标准中,除了编译时常量外,您无法初始化数组。
1999 年出现了一个新的 C 标准,修复了很多这样的缺陷。为了编译此代码,您需要一个支持该语言“C99”更新的编译器。
关于c - C程序中的非法初始化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39011060/