C - 如何在数组中存储多个字符串

Kyu*_*yuu 4 c arrays string

想知道如何在数组中存储不同的字符串.例如,用户将输入'qwe',然后程序将其存储在数组变量[0]中.输入另一个字符串然后将其存储为变量[1],依此类推

int
main(int argc, char *argv[]) {
    char variable[1000];
    int i;

    printf("enter a variable\n");
    scanf("%s", variable);
    for (i = 0; ??? ;i++) {


        printf("The variable entered was: %s\n",variable[i]);
    }
return 0;
Run Code Online (Sandbox Code Playgroud)

我是C新手,所以我不知道我在做什么.但这就是我到目前为止所提出的,并想知道我是否可以得到一些帮助填补其余的谢谢!

hac*_*cks 9

您可以使用2D数组来存储多个字符串.对于10个长度为100的字符串

char variable[10][100];

printf("Enter Strings\n");
for (int i = 0; i < 10 ;i++)  
    scanf("%100s", variable[i]); 
Run Code Online (Sandbox Code Playgroud)

最好用来fgets读取字符串.

fgets(variable[i], sizeof(variable[i]), stdin);  
Run Code Online (Sandbox Code Playgroud)

您还可以使用指针数组来使用动态内存分配char.