scanf(),sscanf(),fscanf()区别:
第一个是从控制台(键盘)输入;
第二个是从字符串输入;
第三个是从文件输入;
printf
printf()函数根据format(格式)给出的格式打印输出到STDOUT(标准输出)和其它参数中。返回值是输出的字符数量。例:
int a,b;
a = printf("gelin\n");//a的值为6
b = printf("the value of the printf is:%d",a);//b的值为24
sprintf
sprintf()函数和printf()类似,格式控制完全一样,只要是printf使用的格式化字符串,在sprintf都可以使用,只是把输出发送到buffer(缓冲区)中。返回值是写入的字符数量。
功能一:格式化数字字符串
//把整数123 打印成一个字符串保存在s 中。
sprintf(s, "%d", 123); //产生"123"
可以指定宽度,不足的左边补空格:
sprintf(s,
"��",
123, 4567); //产生:" 123 4567"
当然也可以左对齐:
sprintf(s, "%-8d�", 123, 4567); //产生:"123 4567"
也可以按照16 进制打印:
sprintf(s, "%8x", 4567); //小写16 进制,宽度占8 个位置,
右对齐
sprintf(s, "%-8X", 4568); //大写16 进制,宽度占8 个位置,左对齐
功能二:控制浮点数打印格式
浮点数的打印和格式控制是sprintf 的又一大常用功能,浮点数使用格式符”%f”控制,默认保留小数点后6 位数字,比如:
sprintf(s, "%f", 3.1415926); //产生"3.141593"
但有时我们希望自己控制打印的宽度和小数位数,这时就应该使用:”%m /nf”格