我有以下两个C-Strings的二维数组。我试图使用strcpy()函数将第一个复制到第二个。但是,我不断收到运行时错误。
#define _CRT_SECURE_NO_WARNINGS
#include <cstring>
#include <iostream>
using namespace std;
int main() {
char word1[3][3] = { "Hello", "Bonjour", "Ni Hao" };
char word2[3][3] = { "Steve", "Pei", "Frank" };
char temp[] = "";
for (int i = 0; i < 3; i++) {
strcpy(temp, word1[i]);
strcpy(word1[i], word2[i]);
strcpy(word2[i], temp);
}
for (int i = 0; i < 3; i++) {
cout << word2[i] << " ";
}
cout << endl;
}
答案 0 :(得分:0)
在你的代码中我发现了一些错误。
word1
,word2
,temp
未正确初始化。您需要增加size
的{{1}}。所以我在这里给你一点解决方案。但是最好使用array
作为user input
的大小,这样任何输入都可以正确匹配。
array