1. 程式人生 > >_snprintf_s()函式的正確用法

_snprintf_s()函式的正確用法

_snprintf_s()函式的n代表最多複製多少個字元,函式名尾部_s表示檢測緩衝區溢位,微軟特有的檢測。

正確用法如下:

char szTable[27] = "abcdefghijklmnopqrstuvwxyz";  
    char szBuffer[10] = { 0 };  
    //將會崩潰,因為會發生緩衝區溢位  
    //_snprintf_s(szBuffer, sizeof(szBuffer), "%s", szTable);  
    //正確用法  
    _snprintf_s(szBuffer, sizeof(szBuffer) - 1, "%s", szTable);