C++strcpy和strcpy

C++strcpy和strcpy,第1张

C++strcpy和strcpy 一.解决:C4996不符合函数“strcpy”规范;This function or variablemay be unsafe;

代码

#include 
#include 
using namespace std;
int main() {
	char b[4];
	char a[4] = "abc";
	strcpy(b, a);
	cout << b << endl;

错误:

解决方案

#define _CRT_SECURE_NO_WARNINGS

代码:

#define _CRT_SECURE_NO_WARNINGS
#include 
#include 
using namespace std;
int main() {
	char b[4];
	char a[4] = "abc";
	strcpy(b, a);
	cout << b << endl;
}

结果:

二.解决strcpy_s函数不接受两个参数

代码:

#include 
#include 
using namespace std;
int main() {
	char *b;
	char a[4] = "abc";
	b = (char*)malloc(strlen(a) + 1);
	strcpy_s(b, a);
	cout << b << endl;
}

错误:

解决方案:

strcpy_s(b,strlen(a)+1, a);//此处+1,因为char结尾多出一个'';

代码:

#include 
#include 
using namespace std;
int main() {
	char *b;
	char a[4] = "abc";
	b = (char*)malloc(strlen(a) + 1);
	strcpy_s(b,strlen(a)+1, a);
	cout << b << endl;
}

结果:

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5670384.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存