请在下面找到代码片段。 strncat
和memcpy
在pDBVal
中有不同的值是否有可能。如果是这样,请解释。
memcpy(pDBVal, pHash, 20);
strncat(pDBVal, cBinSalt, 16);
memcpy(pDBVal+20,cBinSalt,16);
理想情况下,pDBVal中的输出将是相同的。还请说明两个功能在执行上的区别
最佳答案
strncat
应该用于字符串连接,所以在
strncat(pDBVal, cBinSalt, 16);
如果
cBinSalt
的长度小于16
,则仅复制直到'\0'
的内容。