c - 如何将C中的字符转换为字符数组?

标签 c arrays string char c89

假设我有:

....
char aLine;
char inputLine[1000];
scanf("%c", &aLine);
....

现在,我想将 aLine 转换为字符数组,以便可以计算 aLine 有多少个字符。我该怎么做?

最佳答案

语句 scanf("%c",... 读入的是单个字符,所以实际上不需要计数。如果你想将单个字符“转换”成字符串(您可以应用它,例如 strlen()),在特定位置写入字符。不要忘记用 \0 终止字符串(或 0x0),这样 printf("%s"...strlen() 等字符串函数就能正常工作:

char aLine;
char inputLine[1000];
scanf("%c", &aLine);
inputLine[0] = aLine;
inputLine[1] = '\0';

printf("inputLine: '%s' has length %d", inputLine, strlen(inputLine));

或者直接读完整行:

char inputLine[1000];
if (fgets(inputLine,1000,stdin)) {
   printf("inputLine: '%s' has length %d", inputLine, strlen(inputLine));
}

关于c - 如何将C中的字符转换为字符数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52394353/

相关文章:

php - 使用 WEB Apache 服务器(或任何其他 Web 服务器)读取由已编译的 c 文件(即 .exe)生成的内容

php - 从 PHP 数组中选择 MYSQL 数据

Javascript/jQuery 在数组的其余部分查找并删除数组值

javascript - 解析 D3 中堆积面积图的数组

python - 计算字符串中子字符串出现的次数

python - 如何区分字符串和其他Iterables?

c - 为什么 Android 2.6.29 中的 syscalls.h 文件中不存在 sys_mmap?

c - C 中的链接列表不起作用 Valgrind 错误

c - 使用结构体和指针排序

string - SWIFT:大写字符串的性能