当复制一些大于dst的内容时,memcpy()是否安全
Is memcpy() safe when copy some content larger than dst?
当request_token.size()
大于LEN
时安全吗?
char dst[LEN];
memcpy(dst, request_token.c_str(), request_token.size());
不,它不安全;你会造成缓冲区溢出。原因是,除了在第三个参数中传递的大小之外,memcpy
无法知道目标缓冲区的大小。
不,肯定不会,这会导致缓冲区溢出并触发未定义的行为,这将导致各种糟糕的事情,包括但不限于数据损坏和程序崩溃。
不,它不安全。阅读以下内容:http://msdn.microsoft.com/en-us/library/dswaw1wk(VS.80).aspx
使用memcpy_s():http://msdn.microsoft.com/en-us/library/dswaw1wk(VS.80).aspx
否,您最终将尝试写入无效的内存位置,从而导致未定义的行为。
相关文章:
- 从不同线程使用int64的不同字节安全吗
- 将数组作为参数传递给函数安全吗?作为第三方职能部门,可以探索他们想要的之外的其他元素
- 虚拟决赛作为安全
- 获取日期异步信号安全吗?如果在信号处理程序中使用,它会导致死锁吗
- 如何将元素添加到数组的线程安全函数?
- C++中的线程安全删除
- 通过网络、跨平台传递std::变体是否安全
- 在std::thread中,joinable()然后join()线程安全吗
- 使用std::istream::peek()总是安全的吗
- 从值小于256的uint16到uint8的Endian安全转换
- 在c++队列中使用pop和visit实现线程安全
- 在类型和包装器之间reinterpret_cast是否安全<Type>?
- 在什么条件下使用 std::memcpy 在对象之间复制是安全的?
- 直接向工会而不是其特定成员之一发送memcpy数据是否安全
- 用于memcpy的类型安全C 包装器
- 在已发布的结构中添加构造函数(用于 memcpy)是否安全?
- 调用计数大于为 src 分配的内存的 memcpy 是否安全
- 将memcpy与Eigen类型的向量一起使用安全吗
- 以安全的方式替换memcpy
- 当复制一些大于dst的内容时,memcpy()是否安全