如何从用户获取输入char?

时间:2016-11-06 01:09:49

标签: c input char

所以我应该使用while循环来读取两个字符串并对字符串执行一些操作。用户应该能够输入多个字符串对,直到他进入退出状态。我如何接受字符串而不是硬拷贝作为此函数。?

int main(int argc, const char *argv[])
{    
    char string[3], stringSec[2];
    string[0] = 'c';
    string[1] = 'a';
    string[2] = 't';
    stringSec[0] = 'c';
    stringSec[1] = 's';
    int array[3][4];

    // some functions...

    return 0;
}

1 个答案:

答案 0 :(得分:1)

使用fgets读取字符串,strcmp检查字符串是否等于“退出”:

while (strcmp(string, "exit"))
{
    fgets(string, sizeof(string), stdin);
    fgets(secString, sizeof(secString), stdin);

    // perform operations on strings
}

说明:

    如果两个字符串匹配,则
  • strcmp返回0。在上面的示例中,只要循环不返回0,循环就会继续。
  • fgets从文件(第三个参数)读取一定量的字节(第二个参数)为字符串(第一个参数)。

注意:

  • fgets不会从字符串读取中删除尾随换行符。您可以在阅读后添加string[strlen(string)-1] = '\0';来删除它。
  • 您必须#include <string.h>才能使用strcmp