在C语言中printf中、《f》是什么?
在C需要中printf、那个《f》是什么意思?
在C需要中printf、那个《f》是什么意思?
答案:print将它的参数显示在命令窗口,并将输出光标定位在所显示的最后一个字符之后。
println 将它的参数显示在命令窗口,并在结尾加上换行符,将输出光标定位在下一行的开始。
printf是格式化输出的形式。
希望看完,能解开你心中的迷惑。“f”代表 “formatted”
其实除了 C,还有七种语言有 printf( ) 或类似的函数 / 机制:
1)C++(当然啦)
2)Java(刚补上)
3)Python(通过“%”操作符)
4)PHP
5)Perl
6)Octave
7)Maple
非格式化输入 / 输出其实就是二进制格式的输入 / 输出。 典型的例子是结构(struct)的读 / 写和高效的文件拷贝。
C 的非格式化输入 / 输出很简单,因为就只有两个相对应的标准库函数提供这种便利: fread( ) 和 fwrite( )。
假设现有一个 byte,内容是 01000001(等于十进制 65)。
如果你用 fwrite( ) 把这个 byte 输出到一个(新的)文件里去,那么那个文件的内容将是 01000001,跟那个 byte 的内容一模一样。用文本编辑器打开文件来看的话,你会看到一个字符:‘A’,因为 65 是该字符的 ASCII 值。(没错,一般的文本编辑器只能以文本格式把文件的内容输出到显示屏上去。)
但如果你改用 fprintf( ) 以整数格式(%d)进行输出,那个文件的内容将会是两个 byte:00110110 和 00110101,即 ASCII 字符 ‘6’和‘5’,因为格式化输出的结果皆为文本。
日常生活中的例子:
你发现一个事实—— 某某想吐。
如果你不诠释(格式化)该现象(数据)而告诉别人(输出),你说的就是“某某想吐”。
反之,如果你诠释了再告诉别人,你说的可能就是“某某病了”、“某某晕船”、“某某怀孕了”等等。我听说,在创造C的时候,缔造者正在研究“print”时,正在为输入输出结果如何正确显示时,不经意感叹了一声:“So difficult,易做图 you……”,突然灵机一动,“Yeah,I like f,format.”后来,也就把“print”改为“printf”了。可见,“f”暗含format之意。
确切地说,那“f”代表 “formatted”,因为那些函数在输入 / 输出的过程中进行格式化,所以结果都是已经被格式化了的(formatted)数据。有%f指的是取值类型