当前位置: 代码迷 >> VC >> 请问关于strcpy_s函数
  详细解决方案

请问关于strcpy_s函数

热度:401   发布时间:2016-05-05 00:13:34.0
请教关于strcpy_s函数
据说这个函数能解决strncpy不能正确添加null的错误。
虽然有溢出嫌疑,但应该只复制01234然后加null,不是吗? 

为什么我在vs里一运行,debug下出现 "debug assertion failed"。release下直接说“停止工作”
#include "stdafx.h"
#include "iostream"

int _tmain(int argc, _TCHAR* argv[])
{
char dst[5];
char *src="0123456789";
int len=strcpy_s (dst, sizeof(dst),src);
return 0;
}

------解决方案--------------------
char dst[5]={0};//初始化一下
char *src="0123456789";
int len=strcpy_s (dst, sizeof(dst),src);
------解决方案--------------------
楼上的瞎说


楼主要明白这个函数在干什么,你的目的字符串,太小了

------解决方案--------------------
引用:
我知道目标字符串小啊。但是不是应该将源字符换截断然后复制给目标吗

strcpy_s 只是替代strcpy 而已