字符串实现

时间:2017-11-07 21:47:18

标签: c arrays string character

在C中,我如何声明和使用/操作一个字符串数组?

例如,它可能是

a[1]="Apples";
a[2]="Pineapples are red"

如何访问这些元素并进行修改?

3 个答案:

答案 0 :(得分:2)

在您的代码中,a必须是指向char的指针数组,例如char *a[5],然后为其指定字符串文字的指针:

a[1]="Apples";
a[2]="Pineapples are red";

您可以修改某个意义上的元素,使其指向不同的字符串,例如a[1]="another fruit";。您可以访问整个字符串,例如printf("%s", a[1]),您可以访问单个字符,例如char willBeA_p = a[1][1];但是您无法修改示例中字符串的内容,因为它们是字符串文字(并且修改字符串文字会产生未定义的行为)。因此不允许使用a[1][1]='b'

答案 1 :(得分:0)

你可以定义一个字符串数组,如:     char * array_of_strings[100]; 并使用malloc为每个人分配内存。

array_of_strings[0] = (char *) malloc(100);
array_of_strings[0] = "here is your string";

答案 2 :(得分:0)

声明:data_type array_name [array_size];

示例:float mark [5];

您可以通过索引访问数组的元素。假设您如上所述声明了数组标记。第一个元素是mark [0],第二个元素是mark [1],依此类推。

可以在声明期间初始化数组。例如。

int mark [5] = {19,10,8,17,9};