问题遇到的现象和发生背景
为什么会这样,使用的是软件是 vs2022
问题相关代码,请勿粘贴截图
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
int main()
{
int i;
scanf("%d", &i);
char* p;
p = (char*)malloc(i);
char c;
scanf("%c", &c);//去除缓冲区内的\n 上面一个scanf输入的是 10\n 只会读取走10 留下\n
gets(p);
puts(p);
return 0;
}
运行结果及报错内容
0x00007FFC4F88F130 (ucrtbased.dll)处(位于 Project2.exe 中)引发的异常: 0xC0000005: 写入位置 0xFFFFFFFFDD29FB00 时发生访问冲突。
我的解答思路和尝试过的方法
我想要达到的结果
学习malloc