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

Visual Studio 2015 - _CRT_SECURE_NO_WARNINGS

Visual Studio 2015 - `_CRT_SECURE_NO_WARNINGS`

  • 1. `_CRT_SECURE_NO_WARNINGS`
  • 2. `_CRT_SECURE_NO_WARNINGS`
    • 2.1. 文件开头添加代码
    • 2.2. 项目添加预处理定义
  • References

1._CRT_SECURE_NO_WARNINGS

1>------ Build started: Project: yongqiang, Configuration: Debug Win32 ------ 1> foreverstrong.c 1>d:\visual_studio_workspace\yongqiang\yongqiang\foreverstrong.c(51): error 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. 1> c:\program files (x86)\windows kits\10\include\10.0.10240.0\ucrt\stdio.h(1270): note: see declaration of 'scanf' ========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
error 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. error C4996: 'strtok': This function or variable may be unsafe. Consider using strtok_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. error C4996: 'fopen': This function or variable may be unsafe. Consider using fopen_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.

2._CRT_SECURE_NO_WARNINGS

2.1. 文件开头添加代码

#define _CRT_SECURE_NO_WARNINGS
#ifndef _CRT_SECURE_NO_WARNINGS #define _CRT_SECURE_NO_WARNINGS #endif

注意,必须是文件的第一行,要在没有include任何头文件之前。

2.2. 项目添加预处理定义

项目 -> 属性 -> 配置属性 -> C/C++ -> 预处理器 -> 预处理定义

_CRT_SECURE_NO_WARNINGS
a. 与前面的要用分号分开,后面加分号。
b. 换行添加。

/* ============================================================================ Name : hello_world.c Author : Yongqiang Cheng Version : Version 1.0.0 Copyright : Copyright (c) 2019 Yongqiang Cheng Description : Hello World in C, Ansi-style ============================================================================ */ #define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <string.h> int compute_word_length(const char *input_string) { const char *string_pointer = input_string; int string_length = 0; int idx = 0; int word_length = 0; if (NULL == input_string) { return 0; } string_length = strlen(input_string); if (0 == string_length) { return 0; } for (idx = string_length - 1; string_pointer[idx] != ' '; idx--) { word_length++; if (string_length == word_length) { break; } } return word_length; } int main() { char input_string[5000] = { 0 }; int word_length = 0; int idx = 0; while (EOF != scanf("%c", &(input_string[idx]))) { idx++; } if ('\n' == input_string[strlen(input_string) - 1]) { input_string[strlen(input_string) - 1] = '\0'; } word_length = compute_word_length(input_string); printf("%d\n", word_length); return 0; }

退出循环:

qiang + Enter Ctrl + Z + Enter Ctrl + Z + Enter

References

[1] Yongqiang Cheng (程永强), https://yongqiang.blog.csdn.net/

http://www.jsqmd.com/news/475401/

相关文章:

  • U8g2常见问题解答:解决OLED/LCD显示开发中的痛点难题
  • Visual Studio 2015 - Compile as C Code / C++ Code
  • O3DE引擎全面解析:从基础到高级的开源3D创作平台完全指南
  • java毕业设计——基于JSP+sqlserver的机房上机收费管理系统设计与实现(毕业论文+程序源码)——机房上机收费管理系统
  • MedicalGPT完全指南:从零开始训练你的专属医疗大模型
  • 使用slack-cleaner,打造清爽的Slack工作环境
  • pydata-book数据故事讲述:用数据可视化讲述compelling故事
  • 随身wifi刷入debian改打印服务器(详细) ios安卓windows均可用
  • java毕业设计——基于JSP+sqlserver的教师档案管理系统设计与实现(毕业论文+程序源码)——教师档案管理系统
  • 如何快速掌握 gomacro:Go 交互式解释器的终极指南
  • 03.01、三合一
  • 终极编程字体指南:Codeface位图字体画廊的完整使用教程
  • 2026年全案设计公司如何选?这份避坑指南请收好 - 2026年企业推荐榜
  • PyCaret时间序列预测:LSTM与传统模型对比
  • 如何利用RancherOS实现系统服务容器化:从udev到syslog的完整指南
  • 消息队列RabbitMQ的配置操作及使用
  • Django-Oscar搜索功能优化:从基础搜索到智能推荐的终极指南
  • 终极DCGAN训练指南:解决模式崩溃与梯度消失的7个实用技巧
  • 数据清洗从未如此简单:csvclean帮你一键修复CSV文件错误
  • Leetcode_88. 合并两个有序数组
  • 如何快速掌握wysihtml5富文本编辑器:自动链接与语义化标记的完整指南
  • Inputmask终极指南:如何快速实现完美的表单输入控制
  • Solarized终端背景图像:色彩方案与壁纸融合技巧
  • 2026年广式茶点品牌测评:地道风味与品质之选 - 2026年企业推荐榜
  • SW - 归档保存装配图时,可以连装配图中的零件一起保存
  • 如何使用ProcessHacker进行系统调用统计:全面分析进程的系统调用频率与类型
  • 在线查看 Android 系统源代码 AOSPXRef and AndroidXRef
  • 漏洞扫描工具实战指南:从原理到渗透测试应用
  • 2026年3月山东蒸汽锅炉品牌综合实力深度解析 - 2026年企业推荐榜
  • 在线查看 Android 系统源代码 Android Code Search