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;
}
相关推荐
范纹杉想快点毕业3 分钟前
C语言实现埃拉托斯特尼筛法
c语言·开发语言
sycmancia2 小时前
C语言学习06——函数的定义
c语言
定偶2 小时前
Linux进程管理和进程间通信机制
c语言·进程·共享内存·管道·信号量·消息列队
tianyuanwo2 小时前
深入浅出SWIG:从C/C++到Python的无缝桥梁
c语言·c++·python·swig
小美单片机4 小时前
External model DLL ”ADC083XDLL“ not found_proteus仿真报错解决方法
c语言·单片机·51单片机·proteus·课程设计·课设
程芯带你刷C语言简单算法题4 小时前
Day48~对于高度为 n 的台阶,从下往上走,每一步的阶数为 1,2,3 中的一个。问要走到顶部一共有多少种走法
c语言·开发语言·学习·算法·c
进击的小头5 小时前
为什么C语言也需要设计模式
c语言·开发语言·设计模式
啟明起鸣5 小时前
【Linux 项目管理工具】GDB 调试是现成 C/C++ 项目的 “造影剂”,用来分析项目的架构原理
linux·c语言·c++
跃渊Yuey6 小时前
【Linux】Linux进程信号产生和保存
linux·c语言·c++·vscode