strcpy_s的第二个参数的大小应大于源字符串或数组的长度,如
char temp[80];
cout << "Enter last name: ";
cin >> temp;
char * pn = new char[strlen(temp) + 1];
strcpy_s(pn,strlen(temp)+1,temp);//注意是strlen(temp)+1
有更为安全的函数strncpy_s,建议学习
本文探讨了在C++中使用strcpy_s函数时的正确做法,强调了目标缓冲区大小应大于源字符串长度的重要性,以避免潜在的安全风险。同时,介绍了更安全的strncpy_s函数,并鼓励读者深入学习,确保代码的安全性和健壮性。
strcpy_s的第二个参数的大小应大于源字符串或数组的长度,如
char temp[80];
cout << "Enter last name: ";
cin >> temp;
char * pn = new char[strlen(temp) + 1];
strcpy_s(pn,strlen(temp)+1,temp);//注意是strlen(temp)+1
有更为安全的函数strncpy_s,建议学习
7812

被折叠的 条评论
为什么被折叠?