OpenNuvoton / NUC970_NuWriter

NUC970/N9H30 NuWriter PC tool and firmware source code
18 stars 22 forks source link

Help: sscanf_s #5

Closed lightrain1002 closed 2 years ago

lightrain1002 commented 3 years ago

请教,以下代码中,sscanf_s的最后一个参数“4”,表示什么含义?

在VS2019中,编译时出现以下信息:warning C4474: sscanf_s: 格式字符串中传递的参数太多; MSDN中也没找到类似的说明。

int CNuWriterDlg:: Get_Key_Data(HANDLE hFile) { int i; if (Read_File_Line(hFile) < 0) return -1; sscanf_s(_FileLineBuff, "%d", &_nKenLen, 4); if ((_nKenLen != 128) && (_nKenLen != 192) && (_nKenLen != 256)) { printf("Invalid key length: %d!\n", _nKenLen); return -1; } 。。。。 }

yachen commented 3 years ago

Hi, 請參考: https://www.cnblogs.com/kex1n/archive/2011/06/09/2076501.html *注意sscanf_s,当读入的类型是整数或其它长度可以确定的类型时,不能在类型后面跟上长度,但是对于字符串类型(char )长度无法得知则必须在类型后面明确指出字符串的最大长度(即可以容纳的空间)。**