Use*_*492 0 c structure codeblocks
我是C语言中的新结构,但据我所知,我的代码是"正确的".我正在使用Codeblocks,但我也在DEV C++中编译它,我得到了同样的错误
#include <stdio.h>
#include <stdlib.h>
struct film{
int year;
char title[30];
char director[30];
char main_char[30];
} ;
int main ()
{
film venom={ 2018, "Venom", "Ruben Fleischer", "Tom Hardy" };
printf("Year: %d\n", venom.year);
printf("Title: %s\n", venom.title);
printf("Director: %s\n", venom.director);
printf("Main Character: %s\n", venom.main_char);
system("PAUSE");
return 0;
}
Run Code Online (Sandbox Code Playgroud)
这是C,而不是C++,因此结构具有自己的命名空间.
你需要写struct film venom;或使用传统的typedef:
typedef struct film film;
Run Code Online (Sandbox Code Playgroud)
通常附加到结构定义本身;
typedef struct film{
int year;
char title[30];
char director[30];
char main_char[30];
} film;
Run Code Online (Sandbox Code Playgroud)