刚刚开始学c语言,为什么vs2022老是出现这个问题,代码都是直接抄书的但是运行不了

刚刚开始学c语言,为什么vs2022老是出现这个问题,代码都是直接抄书的但是运行不了

img

img

img

第7行的 scanf_s 参数改一次,%c格式的输入加多一个指定长度的参数
scanf_s("%c,%f", &type, 1, &temperature);

写c语言的话,在代码最前面加上下面的语句,然后就可以使用C语言函数,而不需要考虑安全性的问题。
你这个问题就是vs为了安全性,将c语言里面的scanf接口改成了scanf_s,这个改变导致参数输入需要改成scanf_s("%c,%f", &params1, length_of_params1, &params2,length_of_params2);也就是需要指定参数的长度。

#define _CRT_SECURE_NO_WARNINGS

加完之后就可以正常使用scanf,gets等c语言格式的接口

img