C语言--不安全问题

  • gets函数被弃用,不允许使用

因为这个函数在以往的使用过程中出现过重大的安全事故,因此现在在Vs2022中我们无法使用这个函数了。目前遇到的不安全问题都是因为数组的越界造成的。例如字符串拷贝函数的使用如下:

cpp 复制代码
#include<stdio.h>
int main()
{
    char str1[10];
    char str2[]="abcde";
    char str3[]="abcdefghijk";
    strcpy(str1,str2);//这个没有问题
    printf("str1=%s",str1);
    
    strcpy(str1,str3);//这个越界
    printf("str1=%s",str1);
    
    return 0;
}
相关推荐
wuminyu1 小时前
JUC包的AQS与JVM的ObjectMonitor机制对比分析
java·linux·c语言·jvm·c++
wuyk5552 小时前
89.嵌入式内存管理的“稳定利器”:内存池原理与C语言实现
c语言·开发语言·stm32·单片机·嵌入式硬件
凉茶钱4 小时前
【数据结构】C语言实现队列
c语言·数据结构
上海安当技术17 小时前
C/S 桌面软件怎么接 UKey 强认证?C# SDK 与 C 动态库集成 WinForms/Qt/工控实战
c语言·qt·c#
(Charon)19 小时前
【C++】锁与原子操作(四):自旋锁的完整实现与性能优化
c语言·开发语言·c++
小羊先生car20 小时前
RTOS-F429-HAL-Freertos内存管理(2026/8/5)
c语言·单片机·rtos
呜喵王阿尔萨斯20 小时前
extern “C“ in C++
c语言·c++·算法
萌新源1 天前
电赛C题:我用星闪+UWB做了一个数字钥匙门锁系统,开源了
c语言·华为·开源
不正经学生1 天前
C语言指针进阶:const 和野指针——给指针加锁,向野指针宣战
c语言·开发语言·c++·算法·c#
多弗朗皮卡丘1 天前
C语言梦开始的地方3
c语言·开发语言