strcpy_s 是一个在特定环境中(如 Microsoft 的安全 C 函数库)提供的字符串复制函数,它是 strcpy 的一个更安全的替代版本。strcpy_s 函数通过接受目标缓冲区的大小作为参数,帮助防止缓冲区溢出。 关于strcpy_s 的返回值,以下是一些关键信息: 成功时的返回值: 当strcpy_s 成功将源字符串复制到目标缓冲区时,它...
strcpy_s函数不是标准函数,是微软的VS特有的,这个函数返回一个整数,0表示复制成功,返回非0值代表复制不成功,不同的值表示不同的错误,具体内容可以查阅MSDN手册 所以你的代码里p=strcpy_s(copy + 7, sizeof(copy) - 7, orig); 是不可行的 根据你的代码改了下:include<stdio.h> include<...
返回全局变量使用分配的内存,地址是有效 char *fun() { char* s = (char*)calloc(100, sizeof(char*) ); if (s) strcpy ( s , "abc " ); return s; } 但这种方式需要注意,必须由使用将将返回的地址free掉 将地址由入参传入 char* fun(char*s) { if (s) strcpy(s, "abc "); return s;...