社区
其他技术讨论专区
帖子详情
strcpy(str, "hello");会报错,要求使用strcpy_s,但参数类型又不符合条件?
weixin_38061328
2016-09-22 07:29:28
strcpy(str, "hello");会报错,要求使用strcpy_s,但参数类型又不符合条件?请问该怎么解决呢?虽然用string类型可以直接解决,但这种问题还有其他解决方案吗?
...全文
24
3
打赏
收藏
strcpy(str, "hello");会报错,要求使用strcpy_s,但参数类型又不符合条件?
strcpy(str, "hello");会报错,要求使用strcpy_s,但参数类型又不符合条件?请问该怎么解决呢?虽然用string类型可以直接解决,但这种问题还有其他解决方案吗?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
str
cpy
_s函数两个
参数
和三个
参数
str
cpy
_s函数两个
参数
和三个
参数
看名字明白,它和
str
cpy
()函数的功能应该一样的。
str
cpy
函数,就象gets函数一样,它没有方法来保证有效的缓冲区尺寸,所以它只能假定缓冲足够大来容纳要拷贝的字符串。在程序运行时,这将导致不可预料的行为。用
str
cpy
_s就可以避免这些不可预料的行为。 这个函数用两个
参数
、三个
参数
都可以,只要可以保证缓冲
c语言中
str
cpy
_s函数,关于vs
str
cpy
_s()和
str
cat_s()用法探究
在vs 2019版本中 如果
使用
str
cpy
()与
str
cat() 都
会
警告大意说这个
str
cpy
()因为空间分配的 这个函数不安全 不建议用这个函数,
str
cat()也是这样。当然错误c4996完全可以通过代码 让它不提示,但是它确实不安全 不如学习一下新函数的用法。
str
cpy
_s()老的
str
cpy
(D,S)就是把S数组复制给D,返回D。 但是S的空间比D大的话 这就
会
发生错误。这就是...
str
cpy
_s不接受两个
参数
的问题
char *p = new char[25];
str
cpy
_s(p,20,"wenmingjie");才能成功运行,而
str
cpy
_s(p,"wenmingjie")不能。 同理:
str
name = (char *)new char[
str
len(
str
) + 1];
str
cpy
_s(
str
name,
str
len(
str
) + 1,
str
);也是正确的
使用
方法。下面来自...
C++:
str
cpy
、
str
ncpy、
str
cpy
_s、
str
ncpy_s区别
功能:将字符串
str
2复制到字符串
str
1中,并覆盖
str
1原始字符串,可以用来为字符串变量赋值。1. 字符串
str
2
会
覆盖
str
1中的全部字符;2. 字符串
str
2的长度不能超过
str
1;3. 拷贝原理:从首元素开始,遇到\0结束;语法:
str
cpy
(
str
1,
str
2)1.
str
cpy
函数。
str
cpy
_s 和
str
cat_s的用法
str
cpy
_s是系统的安全函数,微软在2005后建议用一系统所谓安全的函数,这中间就有
str
cpy
_s取代了
str
cpy
,原来
str
cpy
函数,就象gets函数一样,它没有方法来保证有效的缓冲区尺寸,所以它只能假定缓冲足够大来容纳要拷贝的字符串。所以用
str
cpy
_s代替,下面有一个
使用
str
cpy
_s的例子: char source[] = "
Hello
world !"; char
其他技术讨论专区
476
社区成员
791,036
社区内容
发帖
与我相关
我的任务
其他技术讨论专区
其他技术讨论专区
复制链接
扫一扫
分享
社区描述
其他技术讨论专区
其他
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章