我试图理解C语言中struct和typedef的概念,所以我创建了这个简单的程序,但是由于某些原因它不能工作。
#include <stdio.h>
#include <stdlib.h>
typedef struct testT{
int number;
} testT;
int main()
{
testT.number=10;
printf("%d", testT->number);
}
但是,它给了我
错误:需要标识符或“(”在“.”之前)标记
为什么会出现这种情况?
谢谢
最佳答案
testT
是一种类型,就像int
一样,您需要使用一个变量:
testT t;
t.number=10;
printf("%d", t.number);
还要注意,应该使用点运算符
.
,因为箭头运算符->
用于指向struct
的指针。