相关疑难解决方法(0)

C中的gets()函数

我又需要帮助!我认为使用该gets()函数非常酷,因为它就像scanf()我可以获得带有空格的输入.但我在其中一个线程(学生信息文件处理)中读到它不好用,因为根据它们,它是一个用于创建缓冲区溢出的魔鬼工具(我不明白)

如果我使用该gets()功能,我可以这样做.输入你的名字:Keanu Reeves.

如果我使用scanf(),我只能这样做.输入你的名字:Keanu

所以我听取了他们的建议并用我的gets()代码替换了fgets().问题是现在我的一些代码不工作了...有没有比其他任何功能gets()及fgets()能读整条生产线和忽略空格.

c

28
推荐指数
2
解决办法
10万
查看次数

我是否正确使用 malloc?

再会!

我需要在创建学生列表系统时使用 malloc.... 为了提高效率,我们的教授要求我们在结构上使用它,所以我创建了一个结构如下:

struct student {
       char studentID[6];
       char name[31];
       char course [6];
};
struct student *array[30];
Run Code Online (Sandbox Code Playgroud)

每次我添加一条记录时,就是我使用 malloc 的时候...

array[recordCtr]=(struct student*)malloc(sizeof(struct student));
recordCtr++;
Run Code Online (Sandbox Code Playgroud)

然后我像这样释放它。

 for(i = 0; i < recordCtr; i++){
       free(array[i]);
  } 
Run Code Online (Sandbox Code Playgroud)

我是否正确使用 malloc ???如果我像这样释放它而不是上面的循环会产生什么效果。

free(array);
Run Code Online (Sandbox Code Playgroud)

提前致谢。您的意见将不胜感激。

c malloc

4
推荐指数
1
解决办法
1220
查看次数

标签 统计

c ×2

malloc ×1