请在下面找到代码段。在strncat
中,memcpy
和pDBVal
是否有不同的值。如果是这样,请解释。
memcpy(pDBVal, pHash, 20);
strncat(pDBVal, cBinSalt, 16);
memcpy(pDBVal+20,cBinSalt,16);
理想情况下,pDBVal中的输出将是相同的。另请说明两种功能的执行差异
答案 0 :(得分:3)
strncat
应该用于字符串连接,所以在
strncat(pDBVal, cBinSalt, 16);
如果cBinSalt
的长度小于16
,则只会复制最多'\0'
的内容。