当前位置:   article > 正文

strcat、strncat、strcmp、strcpy哪些函数会导致内存溢出?如何改进?_strcmp安全隐患

strcmp安全隐患

strcpy函数会导致内存溢出。strcpy拷贝函数不安全,他不做任何的检查措施,也不判断拷贝大小,不判断目的地址内存是否够用。 char strcpy(char strDest, const char strSrc)

strncpy拷贝函数,虽然计算了复制的大小,但是也不安全,没有检查目标的边界

Strncpy(dest,src,sizeof(dest))

strncpy_s是安全的

strcmp(str1,str2),是比较函数,若str1=str2,则返回零;若str1<str2,则返回负数;若str1>str2,则返回正数。(比较字符串)

strncat()主要功能是在字符串的结尾追加n个字符。

char * strncat(char *dest, const char *src, size_t n);

strcat()函数主要用来将两个char类型连接。strcat(d,s);

延伸:

memcpy拷贝函数,它与strcpy的区别就是memcpy可以拷贝任意类型的数据,strcpy只能拷贝字符串类型。

memcpy 函数用于把资源内存(src所指向的内存区域)拷贝到目标内存(dest所指向的内

存区域);有一个size变量控制拷贝的字节数
函数原型:void *memcpy(void dest, void src, unsigned int count);

本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号