为了账号安全,请及时绑定邮箱和手机立即绑定

Visual Stdio 里面怎么不能识别 scanf 函数

Visual Stdio 里面怎么不能识别 scanf 函数

C C++
我的疯癫 2015-12-26 22:22:15
严重性 代码 说明 项目 文件 行错误 C4996 'scanf': This function or variable may be unsafe. Consider using scanf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. ConsoleApplication1 f:\c\hcf lcd\最大公约数和最小公倍数\consoleapplication1\源.cpp 39源代码如下#include <stdio.h>int hcf(int a, int b){ int r; if (a<b) { int t; t = a; b = a; b = t; } //    r=a%b; //    if(r==0) //        return b; //    else //    { //        b=r;a=b; //        return hcf(a,b); //    } while ((r = a%b) != 0) { b = r; a = b; } return b;}/*设两个数是a,b最大公约数是p,最小公倍数是q那么有这样的关系:ab=pq*/int lcd(int a, int b, int p){ return((a*b / p));}int main(){ int m, n; printf("此程序的功能:\n"); printf("求所输入两个整数的最大公约数和最小公倍数\n"); printf("请输入:\na="); scanf("%d", &m); printf("\nb="); scanf("%d", &n); printf("最大公约数为%d\n", hcf(m, n)); printf("最小公倍数为%d\n", lcd(m, n, hcf(m, n)));}
查看完整描述

1 回答

?
onemoo

TA贡献883条经验 获得超454个赞

它提示说 scanf函数不安全(意思是容易被错误地使用而引起错误),建议改用scanf_s。

也许是因为你在C++代码中使用老式的C函数库,才引起VS发出这样的警告并阻止编译。你试试用C++标准库中的版本 :

include <cstdio>

std::scanf()

你也可以在设置中不让VS作这个检查。

查看完整回答
反对 回复 2015-12-27
  • 1 回答
  • 0 关注
  • 2784 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信