与C运行时库中的scanf()函数系列相关的问题,它读取和转换格式化数据。 (包括scanf(),sscanf(),fscanf()及其可变等价物。)
我被要求用 C 语言做一项工作,我应该从输入中读取数据,直到出现空格,然后直到用户按下 Enter 键。 如果我这样做: scanf("%2000s %2000s", a, b); 它将跟随第一个...
C 中使用 while 循环 (scan("%s", &2dArray)) != EOF) 读取文件时会得到额外的行,这是为什么?
我正在尝试读取一个包含 35 行文本的文件,文件中的数字将被转换为字母等级并稍后在代码中输出到控制台。 文件本身是一个文本文件,其中包含...
scanf("%3s", str) 在 c 中只有 1 个输入字符
#包括 int 主函数(无效){ 字符str[3]; scanf("%3s", str); 返回0; } 如果只输入一个字符,str[2]的内容是什么?这是未定义的行为还是......
scanf_s 没有为格式字符串传递足够的参数(Visual Studio)
程序显示错误如标题。 scanf_s 函数有什么问题? 任何想法?提前致谢。 int main() { 结构学生 { 字符名称[10]; int sn...
为什么 sscanf 无法正确提取此字符串格式中的所有数字?
我正在解析GNSS数据,我使用的QuecTel BG96模块有UART串行接口。当尝试提取与消息相关的数据时,大部分数据都可以使用 sscanf 提取,除了......
我必须编写一个程序,输入是: Spring Miles 独立 谎言 自我 结果将是: 微笑 但我在输入方面遇到了一些问题。我不知道输入的长度,所以它可以是任何长度...
我如何让程序等到下一步,直到我输入(我在c中使用了fgets)
我编写了一个程序,但它不会等待接受我的输入。它需要现成的输入。但我只想一一提供输入。 #包括 无效输入(字符a[]){ printf("%s",...
我的目标是使用 scanf() 函数的属性。我想在输入中抑制“:”,以将小时和分钟值放入各自的变量hours_var和mines_var中。 #包括 我的目标是使用 scanf() 函数的属性。我想抑制输入中的 ':',以将小时和分钟值放入各自的变量 hours_var 和 minutes_var。 #include<stdio.h> #include<string.h> void main() { int hours_var,minutes_var; printf("Whats the time??\n"); scanf("%d*c%d",&hours_var,&minutes_var); printf("%d\n", hours_var); printf("%d\n",minutes_var); } 输出: Whats the time?? 2:24 2 0 我想要 24 在 minutes_var 变量中。我错过了什么?? 正如@mch解释,您在%之前缺少指定字符*c的格式。完整的格式字符串应为 "%d%*c%d"。 请注意,这将匹配(并丢弃)前面的 %d 说明符未使用的 任何 字符,因此诸如 2t24 之类的输入格式将起作用。您可以显式匹配 : 字符,如 %d:%d。 正如@一些程序员家伙指出的那样,应始终检查scanf的返回值,以确保在发生少量转换时,您不会使用不确定的值。 #include <stdio.h> int main(void) { int hours, minutes; printf("What is the time: "); if (2 != scanf("%d:%d", &hours, &minutes)) { fputs("Invalid format.\n", stderr); return 1; } printf("%d\n%d\n", hours, minutes); } What is the time: 2:24 2 24 What is the time: 2t24 Invalid format. 您还可以考虑使用 fgets 读取整行,并使用 sscanf 或使用 POSIX strptime 等函数解析日期和时间格式。
如何从输入中读取两行数字到2个数组,C语言?不知道数量?在 C
例如输入为: 12 23 32 41 45 22 11 43 行以 ' 结尾 ', 我想将 nums 保存到 a[] 和 b[]; a[] = {12, 23, 32, 41, 45} b[] = {22, 11, 43} 重点是我不知道有多少......
我有一个包含特定格式数据的文件,我想从该文件中提取并存储某些数字。在程序中我最初使用 sscanf 来解析和存储文件中的值...
do while 循环只执行 scanf_s(" %d", &variable);一次
当遇到 do while 循环时,我只被要求输入一次,然后就陷入无限循环。有人知道为什么吗? 做 { printf("插入出版年份: ”); ...
我的程序中的 scanf() 和输入缓冲区有问题。 首先我要求用户输入: char 一些变量; printf("请输入文字:"); scanf(" %c",&someVariable); 然后我...
printf/scanf 系列中%n 格式有什么实际应用吗?
int x; printf("你好%n世界 “, &X); printf("%d “,x);
这是我尝试运行的代码 - #包括 int main() { 字符a; 整数b; printf("囚犯姓名 ”); scanf("%c",a); printf("jai 多少年了...
我输入此代码是为了让用户不输入字符串而只输入数字,但是当输入类似 55ST 程序接受 55 的内容时,不要将 55ST 视为字符串 printf("请输入数字...
我正在编写一个带有结构和指针的程序。正如您将在程序中看到的,我询问用户是否想继续添加学生。我想检查他的答案是是还是否。显而易见...
以下代码: #包括 int 主函数(无效){ char buf[80] = "萨拉姆"; const char *fmt = "\"%79[^\"]\""; 整数 n; n = sscanf("\"\...
我在c中发现了一些类似的问题,但解决方案是c特定的。包主 这是代码的最小工作示例 导入“fmt” 函数主() { var 模式字符串 ...