c - 是否可以在不使用循环的情况下使用格式说明符 %c 在 c 中输入字符串
问题描述
我知道这段代码会返回一个错误,但是无论如何都可以在不使用任何循环的情况下输入带有 %c 格式说明符的字符串?
char string[100];
scanf("%c",&string);
解决方案
是的。您可以使用格式说明符指定要读取的字符数%c
,因此您可以在已知要读取的字符串长度的特殊情况下使用它。
另请注意,%c
格式指定器不会放置终止空字符,因此您必须小心不要忘记添加它。
#include <stdio.h>
int main(void) {
char string[100] = ""; /* initialize to put a terminating null-character */
if (scanf("%10c", string) == 1) { /* read a 10-character string */
puts(string);
} else {
fputs("read error\n", stderr);
}
return 0;
}
推荐阅读
- python - 为python字典中的所有键添加新键
- sql - 如何使 postgres 快速搜索
- javascript - 在已经存在的 objectStore 上创建索引
- windows - 如何使用带有选项运行的任务计划程序运行批处理文件,无论是否登录
- python-3.x - 熊猫合并语句没有给我数据框之间的区别?
- c++ - 贪吃蛇游戏 - 食物牌的随机数生成器
- git - VS Code 跟踪更改为错误的 Repo
- javascript - javascript-比较数组中的两个字符串以查看它们是否相等
- node.js - AWS 第一台服务器访问第二台服务器上的文件
- java - 获取 jlabel 中文本的边界