关于C语言动态分配结构体数组
想要动态输入学生信息,但是运行时候总出错。
不知道哪里错了。
望高手指点!
不知道哪里错了。
望高手指点!
#include <stdio.h>
int len;
int i,j;
struct stu {
int num;
char *name;
char sex;
};
struct stu * create() {
struct stu *ps;
printf("Input total students!\n");
scanf("%d",&len);
ps=(struct stu *)malloc(len*sizeof(struct stu));
for(i=0;i<len;i++) {
scanf("%d%s%c\n",&ps[i].num,&ps[i].name,&ps[i].sex);
}
return ps;
}
void myPrint(struct stu *ps) {
for(j=0;j<len;j++) {
printf("%d %s %c\n",ps[j].num,ps[j].name,ps[j].sex);
}
}
main() {
struct stu *p;
p=create();
myPrint(p);
getch();
return 0;
}
...全文
相关推荐
在C中如何使函数返回数组
在C中如何使函数返回数组收藏 Java语言的函数可以轻易的返回一个数组,而C/C++却不能直接返回一个数组。这是由于在C/C++中,数组不是一种类型,因此不能被直接返回。 在C/C++中,一般有两种方法来返回一个数组。
C语言变长消息定义:柔性数组
本文主要介绍C语言中柔性数组问题,感性趣的朋友可以看看。
C语言 XX管理系统 不用结构体 链表
这个是我偶然间给别人写的XX管理系统 后来发现不用结构体和链表也能做出来 留作纪念
c代码-C:数组做为形参和返回值
c代码-C:数组做为形参和返回值
C语言柔性数组实例详解
主要介绍了C语言柔性数组,通过实例分析了不完整类型、结构体及柔性数组等概念,需要的朋友可以参考下


