结构化C误解

use*_*701 0 c struct

我试图在C中理解struct和typedef的概念.所以我创建了这个简单的程序,但由于某种原因它不起作用.

#include <stdio.h>
#include <stdlib.h>

typedef struct testT{

    int number;

} testT;

int main()
{
    testT.number=10;

    printf("%d", testT->number);
}
Run Code Online (Sandbox Code Playgroud)

但是,它给了我错误:预期的标识符或'(''''''''令牌为什么会出现?

谢谢

Yu *_*Hao 5

testT是一种类型,就像int你需要使用一个变量:

testT t;
t.number=10;
printf("%d", t.number);
Run Code Online (Sandbox Code Playgroud)

另请注意,您应该使用点运算符,.因为箭头运算符->用于指针struct.