zoukankan      html  css  js  c++  java
  • 更安全的C语言字符串处理函数

    StrSafe.h,位于STANDARDSDK_500/Include/Armv4i/strsafe.h等,每种CPU类型下都有对应的StrSafe.h文件存在。
     
    #include <strsafe.h>
    STRSAFEAPI是为了解决现有的 C 语言运行时函数的代码容易产生的“内存溢出”问题而设计的。
    当引用 strsafe 系列函数时,原有的 C 语言字符串处理函数都将被自动进行 #undef 处理。
    调试过程中的警告或出错信息将会告诉我们哪些函数哪些不安全,哪些已经被相应的 strsafe 系列函数取代了。
    //1.不赞成使用不安全的函数,以避免产生编译错误
    //2.如果你不要安全处理,你可以在包含strsafe.h头文件之前,#define STRSAFE_NO_DEPRECATE
    #ifdef DEPRECATE_SUPPORTED
    // First all the names that are a/w variants (or shouldn't be #defined by now anyway).
    #pragma deprecated(strcpy)
    #pragma deprecated(wcscpy)
    #pragma deprecated(lstrcpy)
    #pragma deprecated(StrCpy)
    类似的Strcat/wcscat/lstrcat/StrCat,sprintf/wsprintf
    以下是在预编译头文件stdafx.h中增加StrSafe.h的调用示例: 
    #pragma warning( disable : 4996 ) //将报警置为无效
    #include <strsafe.h>
    #pragma warning( default : 4996 ) //将报警置为默认
  • 相关阅读:
    构建之法阅读笔记01
    学习进度13
    学习进度12
    个人冲刺十
    个人冲刺九
    个人冲刺八
    学习进度11
    个人冲刺七
    个人冲刺六
    [HDU 1232 ]畅通工程
  • 原文地址:https://www.cnblogs.com/91program/p/5244136.html
Copyright © 2011-2022 走看看