
[英]What is the difference between conversion specifiers %i and %d in formatted IO functions (*printf / *scanf)
在printf和scanf用作格式说明符时, %d和%i之间有什么区别? ...
[英]What is the difference between conversion specifiers %i and %d in formatted IO functions (*printf / *scanf)
在printf和scanf用作格式说明符时, %d和%i之间有什么区别? ...
[英]Why does scanf() need "%lf" for doubles, when printf() is okay with just "%f"?
为什么scanf()<\/code>在读取double<\/code>时需要“ %lf<\/code> ”中的l<\/code> ,而printf()<\/code>可以使用“ %f<\/code> ”而不管其参数是double ...
[英]How do you allow spaces to be entered using scanf?
使用以下代码: 用户可以输入他们的名字,但是当他们输入一个像Lucas Aardvark这样带有空格的名字时, scanf()只会切断Lucas之后的所有内容。 如何让scanf()允许空格 ...
[英]What can I use for input conversion instead of scanf?
我经常看到人们劝阻其他人不要使用scanf并说有更好的选择。 然而,我最终看到的要么是“不要使用scanf ” ,要么是“这是一个正确的格式字符串” ,而从来没有提到任何“更好的选择”的例子。 例如,让我们看一下这段代码: 这将读取上次转换后留在输入 stream 中的空白。 通常建议的解决方案是 ...
[英]Reading a string with scanf
我对某些事情有点困惑。 我的印象是,使用scanf()读取C字符串的正确方法是沿着这条线 (不要介意可能的缓冲区溢出,这只是一个简单的例子) 但是,以下似乎也有效, 这只是我的编译器(gcc),纯粹的运气还是别的什么? ...
[英]scanf() leaves the newline character in the buffer
我有以下程序: 正如我在 C 一书中读到的,作者说scanf()在缓冲区中留下了一个换行符,因此,程序不会在第 4 行停止供用户输入数据,而是将换行符存储在c2和移动到第 5 行。 那正确吗? 但是,这只发生在char数据类型上吗? 因为我没有看到第 1、2、3 行中的int数据类型有这个问题。是吗 ...
[英]What is the format specifier for unsigned short int?
我有以下程序 其中使用gcc filename.c编译时发出以下警告(在scanf()行中)。 warning: format '%u' expects argument of type 'unsigned int *', but argument 2 has type 'short ...
[英]How to prevent scanf causing a buffer overflow in C?
我使用这个代码: 防止可能的缓冲区溢出以便可以传递随机长度的字符串的最佳方法是什么? 我知道我可以通过调用来限制输入字符串,例如: 但我更希望能够处理用户输入的任何内容。 或者这不能使用 scanf 安全地完成,我应该使用 fgets? ...
[英]How can I read an input string of unknown length?
如果我不知道这个词有多长,我就不能写char m[6]; , 单词的长度可能是十或二十长。 如何使用scanf从键盘获取输入? 请输入一个长度为5的字符串输入:你好这是字符串:你好 ...
[英]sscanf in Python
我正在寻找与 Python 中的sscanf()等效的东西。 我想解析/proc/net/*文件,在 CI 中可以这样做: 我起初想使用str.split ,但它不会在给定的字符上拆分,而是将sep字符串作为一个整体: 如上所述,它应该返回 17。 是否有等效于sscanf (不是 RE) ...
[英]Disadvantages of scanf
我想知道scanf()的缺点。 在许多站点中,我读到使用scanf可能会导致缓冲区溢出。 这是什么原因? scanf还有其他缺点吗? ...
[英]Why do I have to specify data type each time in C to printf() and scanf()?
从下面的代码片段中可以看出,我声明了一个char变量和一个int变量。 当代码被编译时,它必须识别变量str和i的数据类型。 为什么我需要在扫描我的变量时通过将%s或%d指定给scanf来再次告诉我它是字符串还是整数变量? 当我声明我的变量时,编译器还不够成熟以识别它吗? ...
[英]What is the difference between sscanf or atoi to convert a string to an integer?
gcc 4.4.4 c89 将字符串转换为整数值更好。 我尝试了两种不同的方法atoi和sscanf。 两者都按预期工作。 或使用atoi 我认为sscanf会更好,因为你可以检查错误。 但是,atoi没有做任何检查。 ...
[英]How to read string from keyboard using C?
我想读取用户输入的字符串。 我不知道字符串的长度。 由于 CI 中没有字符串声明为指针: 并使用scanf从键盘读取输入: 但我遇到了分段错误。 当长度未知时,如何从 C 中的键盘读取输入? ...
[英]Reading in double values with scanf in c
我尝试在 C 中使用 scanf() 读入 2 个值,但系统写入 memory 的值不等于我输入的值。 这是代码: 如果我输入 1 和 2,CMD 返回正确,但 b = -858993460 这是我已经尝试过的:使用 float 或 int 而不是 double,使用 scanf_s,使用 scan ...
[英]Format specifiers for uint8_t, uint16_t, …?
如果我有一个整数变量,我可以通过使用格式说明符 %d 来使用sscanf ,如下所示。 在哪里可以找到uint8_t 、 uint16_t 、 uint32_t和uint64_t格式说明符? uint64_t 可能有 %lu。 ...
[英]Going through a text file line by line in C
我一直在为CIS班级做一个小练习,对C用来从文件中读取的方法感到非常困惑。 我真正需要做的就是逐行读取文件,并使用从每一行收集的信息进行一些操作。 我尝试使用getline方法和其他没有运气的方法。 我的代码当前如下: 现在我用sscanf方法遇到段错误,我不确定为什么。 我是一 ...
[英]Why is scanf() causing infinite loop in this code?
我有一个小的 C 程序,它只从标准输入读取数字,每个循环周期读取一个数字。 如果用户输入了一些 NaN,则应该向控制台打印一个错误,并且应该再次返回输入提示。 输入“0”时,循环应该结束,给定的正/负值的数量应该打印到控制台。 这是程序: 我的问题是,在输入一些非数字(如“a”)时,这会导致无限循 ...
[英]Does sscanf(“123456789123456789123456789”, “%d”, &n) have defined behavior?
当sscanf()或scanf系列中的另一个函数被赋予一个数字序列,其转换值超过目标整数类型的最大值, 是否应该认为转换失败了? 是根本定义的行为? ...
[英]What are scanf(“%*s”) and scanf(“%*d”) format identifiers?
scanf()中格式"%*"的实际用途是什么。 如果存在这种格式,则必须有一些目的。 以下程序给出了奇怪的输出。 输出: ...