如何在C语言中声明字符串数组

8
#include<stdio.h>

int main()
{
int i;
string A[]={"Ahmet", "Mehmet", "Bulent", "Fuat"};

for(i=0;i<=3;i++){
printf("%s",A[i]);
}
return 0;
}

如何将我的数组元素输出?

编译器显示“'string'未声明”。


2
在C语言中没有string类型。 - P.P
请注意,像“Bülent”中的ü这样的输入字符可能不会显示为您的C编译器所理解的一个char - Jens Gustedt
4个回答

22

这样做:

 char *A[] = {"Ahmet", "Mehmet", "Bülent", "Fuat"};

A 是一个指向 char 的指针数组。


1
感谢您的帮助。这是一个基本结构,但不容易记住。 - cethint

6
const char *A[] = {"Ahmet", "Mehmet", "Bülent", "Fuat"};

如果您不加上const,程序仍然可以运行,但编译器会发出烦人的警告,除非您使用“-w”来抑制它们。

1
在C语言中,字符串只能表示为字符数组。因此,要表示字符串数组,您必须创建一个(字符数组的数组)。在C++中,我们有一个称为string的STL,您可以创建一个字符串数组并按照您编写代码的方式使用它(当然需要对C特定的内容进行修改)。

0
你可以使用 cs50 库来处理字符串,或者可以使用指针进行操作。 CS50
string names[] = {"Mohammed", "Mhammed", "Ali", "Lora"};

指针

char *names[] = {"Mohammed", "Mhammed", "Ali", "Lora"};

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接