c语言中 strcpy函数是否可以用于二维数组?

 我来答
Arthas_bb
推荐于2017-09-03 · TA获得超过414个赞
知道小有建树答主
回答量:123
采纳率:100%
帮助的人:111万
展开全部

可以的,二维数组本身就是由多个一维数组组成的,对二维数组其中的一维数组分别使用strcpy即可:

#include <iostream>
using namespace std;
void main()
{
char* str = "hello world!";
char arr[100][100];
strcpy(arr[0], str);
cout<<arr[0]<<endl; //输出hello world!
}

 如果不是逐个一维数组拷贝,那可以使用memcpy函数:

#include <iostream>
using namespace std;
void main()
{
char* str = "hello world!";
char arr[100][100];
memcpy(arr,str,13);
cout<<arr[0]<<endl; //输出hello world!
}
百度网友d920da4
2014-11-08 · TA获得超过255个赞
知道小有建树答主
回答量:169
采纳率:0%
帮助的人:147万
展开全部
不可以。
如果非要用strcpy,你必须一行一行的来使用strcpy。
希望能帮到你。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
袭捷驹翠荷
2019-11-20 · TA获得超过3781个赞
知道大有可为答主
回答量:3138
采纳率:33%
帮助的人:196万
展开全部
是的
如果要用于二维数组,需要取二维数组中的第一维。

char
a[100][100];
gets(a[20]);
这样可以。
gets(a);
理论上也能用,等效于a[0],但一些编译器会报错。
一般不这么写。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zy1404
2014-11-08 · TA获得超过1387个赞
知道小有建树答主
回答量:784
采纳率:100%
帮助的人:478万
展开全部
strcpy提供了字符串的复制即strcpy只用于字符串复制,并且它不仅复制字符串内容之外,还会复制字符串的结束符
他只能适用char 型数组
对于int 类型不适用

你可以使用memcpy()
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友b0e808e
2020-03-27
知道答主
回答量:3
采纳率:0%
帮助的人:1843
展开全部
谢谢你们 解答了我的疑惑
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式