将String值分配给行

时间:2013-12-14 19:03:02

标签: c arrays character

我在想如何将字符串值分配给C中2 * 2字符数组中的行? 这可以在java中完成:

    char [][] array = new char[10][10];
    array[1] = "foo".toCharArray();

1 个答案:

答案 0 :(得分:2)

在C中,您无法“分配”到数组。但是,您可以字符串文字(或任何字符串)复制到数组中。您只需要确保不会导致缓冲区溢出:

char arr[10][10];

const char *str = "foo";
if (strlen(str) < sizeof(arr[1])) {
    strcpy(arr[1], str);
}

或者,您可以指定指针(指针数组的成员):

const char *arr[10];
arr[1] = "foo";

除非你提供更多关于你想要使用数组的上下文,否则你无法确定需要使用哪一个。