139得票11回答
如何在C语言中使用scanf读取单个字符

在C语言中:我正在尝试使用scanf从用户获取字符,但运行程序时它不等待用户输入任何内容...这是代码:char ch; printf("Enter one char"); scanf("%c", &ch); printf("%c\n",ch); 为什么它不起作用?

17得票6回答
使用指向字符的指针和scanf函数

我已经编写了以下代码:int main() { char arrays[12]; char *pointers; scanf("%s", arrays); scanf("%s", pointers); printf("%s&...

11得票1回答
“strtod("3ex", &end)”的结果应该是什么?“sscanf”呢?

在我的实验中,这个表达式 double d = strtod("3ex", &end); 使用3.0初始化 d,并将end指针放置在输入字符串中的'e'字符处。这正是我期望它表现的方式。虽然'e'字符可能看起来像指数部分的开头,但由于缺少实际指数值(6.4.4.2所需),所以应将该'e...

25得票2回答
在C语言的scanf()函数中使用"\n"的方法

在我的一个程序中,我不小心使用了scanf("%d\n",&val);,我无法理解函数所表现出来的行为。int main(){ int val; scanf("%d\n", &val); printf("%d\n", val); return 0...

7得票3回答
为什么我的程序中第二个scanf不起作用?

scanf("%d %c",&size,&chara);可以正常工作,但是分开使用scanf进行字符输入无法正常工作。 我在代码中展示了这些内容。为什么会这样? void squareCustomFill(int size, char chara); int main(vo...

29得票6回答
scanf: "%[^\n]" 跳过了第二个输入,但是 " %[^\n]" 却没有。为什么?

考虑以下代码:#include <stdio.h> int main (void) { char str1[128], str2[128], str3[128]; printf ("\nEnter str1: "); scanf ("%[^\n]", str1); ...

10得票5回答
从控制台读取字符

我编写了一个控制台应用程序,其中执行了几个scanf以获取整数。在这之后,我执行了getchar:int x,y; char c; printf("x:\n"); scanf("%d",&x); printf("y:\n"); scanf("%d",&y); c = getch...

7得票4回答
在 while 循环中使用 scanf 函数

我正在尝试为编程作业格式化以空格分隔的用户输入。该输入基本上由任意数量的表达式组成,包括“L 整数 整数 整数 整数”和“C 整数 整数 整数”等。例如:“L 1 1 5 7 C 4 5 3”。到目前为止,我已经成功提取了初始字符的整数,并可以使用scanf函数迭代遍历字符串。 char a...

7得票4回答
比scanf更快的方法?

我正在使用scanf("%d", &someint)进行大量正整数解析。为了确定scanf是否成为瓶颈,我实现了一个使用fread的简单整数解析函数,代码如下: int result; char c; while (fread(&c, sizeof c, 1, stdin)...

18得票4回答
fgets和fscanf有什么区别?

我有一个关于C语言中fgets和fscanf的问题。这两者的区别到底是什么?例如:char str[10]; while(fgets(str,10,ptr)) { counter++; ... 还有第二个例子:char str[10]; while(fscanf(ptr,"%s",str)) ...