Ai sửa hộ lỗi giúp mình với

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <conio.h>
struct sinhvien
{
	char name [50] ;
	char masv [50];
};
void nhap(struct sinhvien *a)
{
	printf("nhap ten sinh vien\n");
	fflush(stdin);
	gets(a->name);
	printf("nhap masv\n");
	fflush(stdin);
	gets(a->masv);
}
void xuat(struct sinhvien *a)
{
	printf("ten sinh vien la %s \n",a->name);
	
	printf("ma sinh vien la %s\n",a->masv);
	
}

int main()
{
	struct sinhvien *a=(struct sinhvien*)malloc(sizeof(struct sinhvien*));
	nhap(a);
		xuat(a);
	free(a->name);
	free(a->masv);

		getch();
	return 0;
}

Lần sau post code lên thì markdown code lại và nói rõ lỗi là gì?
Nhìn sơ qua code thì thấy hàm nhap chưa truyền tham biến.

1 Like

Xóa đi chỉ free(a); thôi.
Lần sau đặt typedef đi cho gọn code.

1 Like

Mặc dù câu hỏi này đã được trả lời nhưng tiêu đề và nội dung câu hỏi không rõ ràng. Đạt ẩn bài viết này đi để nâng cao chất lượng diễn đàn.

Founder,
Đạt

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?