30/09/2018, 23:51
Lỗi khi tạo cấu trúc bằng file.cpp và file.h
Hi mọi người,
Em có tạo 2 cấu trúc struct bằng 2 file.h để khai báo và file.cpp để định nghĩa.
Đề bài: Nhập / xuất danh sách thông tin sinh viên.
Source code:
souce.cpp
#include "structure.h"
int main()
{
MANGSV *li = (MANGSV *)malloc(sizeof(MANGSV));
NhapMangSV(li);
XuatMangSV(li);
free(li->arr);
getch();
return 0;
}
file.h
//#pragma once
#ifndef _structure_
#define _structure_
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
typedef struct stdinf STDINF;
struct stdinf
{
char code[20];
char name[30];
double diemtoan;
double diemly;
double diemhoa;
};
typedef struct mangsv MANGSV;
struct mangsv
{
int n;
STDINF *arr;
};
void NhapThongTin(STDINF *);
void XuatThongTin(STDINF *);
void NhapMangSV(MANGSV *);
void XuatMangSV(MANGSV *);
#endif
file.cpp
#include "structure.h"
void NhapThongTin(STDINF *s)
{
printf("
Nhap ma thi sinh: ");
scanf("%s", s->code);
printf("
Nhap ho va ten: ");
while (getchar() != '
' && getchar() != EOF) {}
gets_s(s->name);
printf("
Nhap diem toan: ");
scanf("%lf", &s->diemtoan);
printf("
Nhap diem ly: ");
scanf("%lf", &s->diemly);
printf("
Nhap diem hoa: ");
scanf("%lf", &s->diemhoa);
}
void XuatThongTin(STDINF *s)
{
printf("
Ma thi sinh: %s
", s->code);
printf("
Ho va ten: %s
", s->name);
printf("
Diem toan: %.2lf
", s->diemtoan);
printf("
Diem ly: %.2lf
", s->diemly);
printf("
Diem hoa: %.2lf
", s->diemhoa);
}
void NhapMangSV(MANGSV *li)
{
printf("
Nhap so luong mon hoc: ");
scanf("%d", &li->n);
li->arr = (STDINF *)malloc(li->n * sizeof(STDINF));
for (int i = 0; i < li->n; ++i)
{
printf("
---------- NHAP VAO SINH VIEN %d ----------
", i + 1);
NhapThongTin(&li->arr[i]);
}
}
void XuatMangSV(MANGSV *li)
{
for (int i = 0; i < li->n; ++i)
{
printf("
---------- THONG TIN SINH VIEN %d ----------
", i + 1);
XuatThongTin(&li->arr[i]);
}
}
Nhưng khi build & run thì compiler nó báo lỗi như sau:
Mọi người ai biết lỗi này thì giúp em nhé, xin cảm ơn nhiều !
Bài liên quan
Google lỗi này thì thấy bảo chỉ cần clean project rồi build lại là được. http://stackoverflow.com/questions/4256524/lnk1318-unexpected-pdb-error-ok-0