当前位置: 首页 > article >正文

Visual Studio(VS)初始配置环境(scanf异常)

发现问题

当我们第一次安装Visual Studio(VS)且没有初次环境配置时,用某些函数时会发现报错异常。(如下scanf函数为例)

#include<stdio.h>

int main()
{
	int a = 0;
	scanf("%d", &a);
	printf("%d", a);

	return 0;
}

报错结果为:
在这里插入图片描述
这里报错显示的是:这函数或者变量可能不安全,考虑使用scanf_s替换。想让这个描述失效的话,使用"#define _CRT_SECURE_NO_WARNINGS 1"。
scanf_s不是c语言提供的函数,而是当前使用的VS中提供的函数,如果你的代码中使用这个函数的话,那么你的代码在其他编译器上是不能编译通过的。(即代码无法跨平台使用)
因为scanf_s函数和scanf函数的使用方式不完全相同。

解决方案

临时解决方案

将"#define _CRT_SECURE_NO_WARNINGS 1"写在第一行(即定义在第一行)
如:

#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>

int main()
{
	int a = 0;
	scanf("%d", &a);
	printf("%d", a);

	return 0;
}

永久解决方案

如果想当自己的VS创建的.c文件中自动加上这句代码,怎么做?
1.在vs中有一个叫newc++file.cpp的文件,所有的新文件都是拷贝自newc++file.cpp这个文件
2.如果在newc++file.cpp文件中,加入这句话,问题就完美解决了。
我们在电脑上查找这个文件(用第三方查找工具比较快),路径为"visual studio\Common7\IDE\VC\VCProjectItems"
在这里插入图片描述
将这个文件拷贝在桌面(直接修改可能显示权限不够),用记事本打开,把"#define _CRT_SECURE_NO_WARNINGS 1"复制粘贴(自己输入非常非常容易出bug)在里面,然后保存+关闭。
在这里插入图片描述
替换源文件就完美解决了!(记得新建新C语言项目检查检查)。


http://www.kler.cn/a/538577.html

相关文章:

  • 如何在Android Studio中开发一个简单的Android应用?
  • leetcode 80. 删除有序数组中的重复项 II
  • verilog练习:i2c slave 模块设计
  • android selinux 问题
  • opencv图像处理
  • Oracle Database Free版本的各项许可限制
  • Spring(26) spring-security-oauth2 官方表结构解析
  • 前端工程师的AI协作:增强与赋能
  • leetcode_深度搜索和广度搜索 94. 二叉树的中序遍历
  • Ubuntu 作为 FTP 服务器,Windows 作为 FTP 客户端
  • 元宇宙中的隐私与数据保护:Facebook 的挑战与机遇
  • 从零开始人工智能Matlab案例-粒子群优化
  • 武汉火影数字|VR虚拟现实:内容制作与互动科技的奇妙碰撞
  • 人工智能A*算法-爬坡路段增加移动代价,在狭窄街道考虑车辆的转弯半径
  • CF 69A.Young Physicist(Java实现)
  • Java高频面试之SE-19
  • 花旗银行java面试_花旗金融—面经(已offer)
  • docker安装 mongodb
  • 医疗任务VLMs安全漏洞剖析与编程防御策略
  • camera系统之cameraprovider
  • Easing Wizard - 免费的 CSS 缓动曲线在线编辑器,前端开发做动画效果的必备工具
  • CSS 相关知识
  • 【STM32】AHT20温湿度模块
  • Ubuntu 多版本 gcc 配置常用命令备忘
  • 【Rust自学】20.4. 结语:Rust学习一阶段完成+附录
  • 调用 useState 之后发生了啥(⊙_⊙)?