作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
char* s1;
strcpy(s1,"smilehihi");
s1[6] = 'a';
当我编译时,VS没有任何错误。但在运行时,我的代码出错了。我想我不太了解strcpy
最佳答案
这里的主要问题不是 strcpy()
函数,而是您没有为字符串本身分配任何内存。如果我是你,我会做类似的事情
char* s1=(char*)malloc(SIZE); // the SIZE is the predefined maximum size of your string
strcpy(s1,"smilehihi");
s1[6] = 'a';
编辑:
作为建议,请考虑使用 stpncpy()
。它有助于避免缓冲区溢出,并且根据您的情况,将帮助您避免超过 char*
char * stpncpy(char * dst, const char * src, size_t len);
关于c++ - 不明白C++中的strcpy,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61334847/
我是一名优秀的程序员,十分优秀!