0
#include<stdio.h>

typedef struct student{
int id;
int mark;
}stud;

typedef struct stud *s1;

void main(){
s1 = NULL;
printf("hi");
}

请帮助我如何将结构指针初始化为 NULL。我在编译期间收到以下错误。

graph.c: In function ‘main’:  
graph.c:11:04: error: expected identifier or ‘(’ before ‘=’ token
4

2 回答 2

0

您的意思是将变量定义s1

stud *s1;

现场演示:http: //ideone.com/9ThCDi

您收到错误的原因是您声明s1是“指向结构螺柱的指针”的类型。这是错误的,原因有二:

  1. 你不想s1成为一个类型;你想让它成为一个对象。
  2. 你的结构是struct student. 但是您定义了一个名为stud.
于 2013-01-07T05:11:27.073 回答
0

使用struct student *s1;

代替

typedef 结构螺柱 *s1;

据我所知, typedef 仅在您定义自定义数据类型时使用。

于 2013-01-07T07:00:29.123 回答