gpt4 book ai didi

C:我的程序出了什么错误?

转载 作者:行者123 更新时间:2023-11-30 18:32:46 27 4
gpt4 key购买 nike

这是一个带有 C 语言文件的简单程序。

在文件文本中输入人员姓名和 ID。

但工作不正常,并且很乐意帮助编写代码。

我的函数 malloc 没问题吗?

#include <stdio.h>
#include <stdlib.h>

void person();

void main(){

person();
}

void person(){

FILE *file;
char *str;
int i,id;

file=fopen("personid.txt","w");

if(!file)
{
puts("Error");
exit(1);
}

str=(char*)malloc(sizeof(char*));

for(i=0; i<5; i++)
{
puts("Enter name:");
gets(str);
puts("Enter you ID:");
scanf("%d",&id);
fprintf(file,"%s - %9d\n",str,id);
}

free(str);
fclose(file);

}

最佳答案

你的内存分配是错误的,应该是这样的:

str=(char*)malloc(sizeof(char)*count_of_chars);

请记住为 count_of_chars 设置一个值。

关于C:我的程序出了什么错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9185753/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com