关于VS2017中fopen、fscanf等函数无法使用的问题

2 篇文章 0 订阅

本人最近用VS2017编写了一个C程序,用来读取串口数据,程序如下:

#include <stdio.h>  
#include <windows.h>  
int main(void)
{
FILE *fp;
char temp; 
char buf[100];
if ((fp = fopen("com6", "r")) == NULL)
puts("Can't open com6 /n");
while (1)
{
temp = 0;
fscanf(fp, "%c", &temp);
if (temp != 0)
putchar(temp);
else
Sleep(100);
}
fclose(fp);
return 0;

}

运行时,总是报错说,fopen、fscanf不安全区,建议换成fopen_s和fscanf_s,但是这两个函数用不习惯,于是就多方查找资料,得到方法:

方法一: 只需在新建项目时取消勾选“SDL检查”即可;

方法二:若项目已建立好,在项目属性里关闭SDL也行;

设置好之后顺利运行,虽然读取的数据还有些偏差,但是最起码可以正常运行,并且可以读取数据了

希望对遇到类似问题的同学有所帮助!

  • 8
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值