c语言如何实现多维整型数组的复制
4个回答
展开全部
memcpy(目的地址,源地址,字节数)
由于数组元素为连续内存存放
可以使用此函数,将源地址的内存内容,复制到目的地址去,字节数为sizeof(数组名)
由于数组元素为连续内存存放
可以使用此函数,将源地址的内存内容,复制到目的地址去,字节数为sizeof(数组名)
更多追问追答
追问
for(c=0;c<3;c++)
{
strcpy(q,score[j][c])
strcpy(score[j][c],score[i][c]);
strcpy(score[i][c],q);
}我是这么写的,但是我想实现一行一行的排序,所以想把多维数组里的一行三个元素复制给q(我申请的一维含三个元素的数组,但是貌似strcpy是复制字符串的 遇到空格就停止了 因此只有第一列是我想要的顺序,这该怎么办呢~?
追答
如tanyuguo所说,当成一维数组来复制
比如
char a[3][3]
其实它就可以理解成3个一维数组
char a[3]
char b[3]
char c[3]
memcpy(q, &a[i][0], 3 * sizeof(char)); i就是所在的行,从0开始
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
当成一维数组来复制呗,反正多维数组内部的数据都是连续的。
追问
谢谢~
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2011-12-03
展开全部
1.for一重一重循环
2.可以这样
typedef struct{
int s[9][9][9];
}WORD;
WORD p,q;
访问是用p.s[][][];
用的时候把p的值赋给q:q=p;
应该还有其他办法,请高人指点吧!
2.可以这样
typedef struct{
int s[9][9][9];
}WORD;
WORD p,q;
访问是用p.s[][][];
用的时候把p的值赋给q:q=p;
应该还有其他办法,请高人指点吧!
追问
恩~谢谢~
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询