我不熟悉C语言,并且正在执行与C语言结构指针有关的任务。我必须按date((yyyyMMdd) time(hhmm) name(title) importance(1~10) content.
的顺序输入,必须按date (yyyy.MM.dd.) time (hh:mm) importance content.
的顺序输出
这是我的代码此代码在第27,28行生成C4047,C4024错误。如果我忽略该错误消息并对其进行调试,则会出现“ wntdll.pdb未加载”错误。我该怎么办?
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
struct Calender
{
int day, time;
int imt; //importance
char tle[127]; //title
char cnt[127]; //contents
};
void input_calender()
{
char title[127];
char contents[127];
struct Calender* a = malloc(sizeof(struct Calender));
scanf("%d", &(a->day));
scanf("%d", &(a->time));
scanf("%d", &(a->imt));
scanf("%hhd", &title);
scanf("%hhd", &contents);
a->day = 8;
a->time = 4;
a->imt = 1;
strcpy(a->tle, &title);
strcpy(a->cnt, &contents);
free(a);
}
void print_calender(struct Calender* a)
{
int i;
for (i = 0; i < 8; i++)
{
if (i == 4 || i == 6)
printf(".");
printf("%c", ((a->day) + i));
}
printf(" ");
for (i = 0; i < 4; i++)
{
if (i == 2)
printf(":");
printf("%c", ((a->time) + i));
}
printf(" ");
printf("%d ", a->imt);
printf("%s ", a->tle);
printf("%s\n ", a->cnt);
}
int main(void) {
int num=0;
int i;
struct Calender* p = malloc(sizeof(struct Calender) * (num + 1));
scanf("%d", &num);
//입력
for (i = 0; i < num; i++)
{
input_calender(p + i);
}
//출력
for (i = 0; i < num; i++)
{
print_calender(p + i);
}
free(p);
} ```