将多维数组的内容复制到单个数组

时间:2017-02-17 15:27:23

标签: c arrays string multidimensional-array

我需要复制C = FOREACH B GENERATE myFunc.func(y); 2D数组的特殊字符串内容。

这是2D数组: -

CryptoTables

如何将上面给定的2D数组的任何特定位置的内容复制到另一个单个数组字符串(#define CRYPTOENTRIES 10 unsigned char CryptoTables [CRYPTOENTRIES][7]= {"Sgehd", "Fshdj", "Hdbdh", "Gshsi", "Hiufs", "Rtygd", "Tyygf", "Gfftn", "Ffyhs", "Fghhx"}; )?

例如,如果我必须将char array[10];中的第3个字符串,即CryptoTables复制到另一个数组字符串。?

2 个答案:

答案 0 :(得分:0)

您可以将foo的每一行作为foo[i]进行访问 因此,要复制CryptoTables的第3个字符串,您可以使用以下代码:

char bar[7];
strcpy(bar, CryptoTables[2]);  

数组bar必须足够大,以容纳CryptoTables[2] 指向的字符串,包括终止\0字节。

答案 1 :(得分:-1)

所有条目的长度均为5个字符,因此新数组应为char arr[6](5个字符+空终止符字节)。如果您要复制它,只需找到想要的字符串:CryptoTables[2](第三个位置),然后使用strncpy将其复制到arr - 请在此处阅读:

http://fresh2refresh.com/c-programming/c-strings/c-strncpy-function/

相关问题