【问题标题】:How to store each character of a user entered sentence separately in an array, within C如何在C中将用户输入句子的每个字符分别存储在数组中
【发布时间】:2020-04-18 18:54:58
【问题描述】:

在 C 中我想知道如何将用户输入句子的每个字符分别存储在数组中。 谢谢!

【问题讨论】:

  • 第一步:制作一个数组。第 2 步:使用 getchar() 一次读取一个字符。

标签: c cs50


【解决方案1】:

这样的事情会起作用。

size_t num_user_data = 0;
char** user_data = NULL;
char user_input[100] = {0} // don't use magic numbers in your code...;
while ( (gets(user_input)) && user_input[0] != '\n' ) {
    num_user_data += 1;
    user_data = realloc(user_data, sizeof(char*) * num_user_data);
    user_data[num_user_data-1] = strdup(user_input);
}

// You need to free user_data and user_data[i] somewhere...

user_data[i][j] 会给你输入的第 i 个句子的字符 j。

【讨论】:

    猜你喜欢
    • 2015-04-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-11
    • 1970-01-01
    • 1970-01-01
    • 2020-01-09
    相关资源
    最近更新 更多