VS #define _CRT_SECURE_NO_WARNINGS 1 添加了仍然报错

简介: 一些小的错误,往往让初学者抓耳挠腮VS #define _CRT_SECURE_NO_WARNINGS 1 一定要放在最开始的位置

在使用 Visual Studio 进行 C/C++ 开发时,调用一些不安全的函数(如 strcpy、strcat 等)会提示 _CRT_SECURE_NO_WARNINGS 警告。这些函数不安全,可能导致内存泄漏等问题,因此建议使用带 _s 后缀的函数(如 strcpy_s、strcat_s 等)来代替它们。


但有时候


#define _CRT_SECURE_NO_WARNINGS 1 明明添加了却还是不可以使用


1.png

#include <stdio.h>#include <string.h>#define _CRT_SECURE_NO_WARNINGS 1intmain() {
charstr1[] ="Hello";
charstr2[] ="World";
charcombined[20]; // 定义一个足够大的数组来存放合并后的字符串strcpy(combined, str1); // 将第一个字符串复制到合并后的数组中strcat(combined, " ");  // 在合并后的数组中加上一个空格strcat(combined, str2); // 再将第二个字符串连接到合并后的数组中printf("%s\n", combined); // 输出合并后的字符串return0;
}

解决办法 把#define _CRT_SECURE_NO_WARNINGS 1移到开头

#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>#include <string.h>intmain() {
charstr1[] ="Hello";
charstr2[] ="World";
charcombined[20]; // 定义一个足够大的数组来存放合并后的字符串strcpy(combined, str1); // 将第一个字符串复制到合并后的数组中strcat(combined, " ");  // 在合并后的数组中加上一个空格strcat(combined, str2); // 再将第二个字符串连接到合并后的数组中printf("%s\n", combined); // 输出合并后的字符串return0;
}

问题已经解决

目录
相关文章
|
IDE 编译器 程序员
深入理解C程序的#include和头文件,让c工程只有.h文件(狗头)
深入理解C程序的#include和头文件,让c工程只有.h文件(狗头)
1943 0
深入分析luait反编译之luajit-decomp
#背景 Luajit在游戏中应用广泛,在逆向分析游戏过程中免不了与luajit打交道,那网上有非常多关于luajit反编译的资料,汇总起来常用的两种方案:https://github.com/zzwlpx/ljd 和 https://github.com/bobsayshilol/luajit-decomp, 第一种方案相对来说可读性好但兼容性差经常出现反编译异常崩溃。第二种方案反编译
8398 0
|
6月前
|
人工智能 程序员 决策智能
2026年智能体(Agent)怎么学?从入门到实战的全景避坑指南
2026年,AI进入“智能体元年”。本文系统解析智能体四大核心架构与Agentic Workflow设计模式,涵盖开发者、产品经理到业务人员的实战路径,助力把握AI代理红利期,实现从工具应用到架构创新的跃迁。
11042 6
|
4月前
|
编译器 项目管理 C语言
蓝桥杯Dev-C++ 5.11(编译器)使用细节排坑!!!
为适用各种比赛,教你如何用 DEV C++ 细节( ̄︶ ̄)↗ 
392 1
|
存储 编译器 程序员
【C语言】auto 关键字详解
`auto` 关键字用于声明局部变量的自动存储类,其作用主要体现在变量的生命周期上。尽管现代C语言中 `auto` 的使用较少,理解其历史背景和作用对于掌握C语言的存储类及变量管理仍然很重要。局部变量默认即为 `auto` 类型,因此在实际编程中,通常不需要显式声明 `auto`。了解 `auto` 关键字有助于更好地理解C语言的存储类及其在不同场景中的应用。
924 1
|
XML 机器学习/深度学习 数据格式
YOLOv8训练自己的数据集+常用传参说明
YOLOv8训练自己的数据集+常用传参说明
27271 3
|
Java Python Windows
软件安装(四):Pycharm安装详细教程
本文提供了一个详细的PyCharm安装教程,包括下载、安装和使用步骤,特别强调了在Windows环境下安装时不要选择关联.py文件的选项,并说明了如何配置系统环境变量Path以及激活账号密码。
619 1
软件安装(四):Pycharm安装详细教程
|
缓存 算法 网络协议
一文详细理解计算机网络 - 数据链路层(考试和面试必备)
这篇文章详细介绍了计算机网络中数据链路层的概念、基本问题、点对点信道和广播信道的数据链路协议(如PPP和CSMA/CD),以及局域网和以太网的相关知识。
4722 0
一文详细理解计算机网络 - 数据链路层(考试和面试必备)
【天梯赛】L1-095 分寝室
输出的方案对应女生都是 24/4=6 人间、男生都是 60/6=10 人间,人数差为 4。满足前三项要求的分配方案还有两种,即女生 6 间(都是 4 人间)、男生 4 间(都是 15 人间);同时,每间女寝人数必须都一样,每间男寝人数必须都一样,也就是女生总人数对女寝数取模为0,男生总人数对男寝数取模为0。输入在一行中给出 3 个正整数 n0​、n1​、n,分别对应女生人数、男生人数、寝室数。按题意模拟,因为知道总寝室数为n,所以可以从1~n-1暴力枚举女寝 i 的数量,那么男寝的数量则为 c-i。
542 6