格式控制符
格式控制符是用于指定 printf、scanf、fprintf、fscanf 等 C 标准库函数中的格式化输入和输出的特殊字符序列。这些字符序列定义了如何解释要输出或输入的数据。以下是一些常用的格式控制符:
- 
%d: 用于输出或输入十进制整数。
- 
%f: 用于输出或输入浮点数。
- 
%c: 用于输出或输入单个字符。
- 
%s: 用于输出或输入字符串。
- 
%x: 用于输出或输入十六进制整数。
- 
%o: 用于输出或输入八进制整数。
- 
%u: 用于输出或输入无符号十进制整数。
- 
%%: 用于输出一个百分号%。
- 
%e,%E: 用于以指数形式输出浮点数。
- 
%g,%G: 用于自动选择%f或%e(或%E)输出浮点数。
- 
%p: 用于输出指针地址。
- 
%n: 用于将字符数赋给参数。
这些格式控制符可以用于 printf、scanf、fprintf、fscanf 等函数中,用于格式化输出到屏幕或文件,或者从输入中解析数据。例如:
int num = 42;
printf("The number is: %d\n", num);
char str[] = "Hello, world!";
printf("The string is: %s\n", str);
在这个示例中,%d 和 %s 就是格式控制符,分别用于输出整数和字符串。格式控制符可以和其他字符一起使用,用于更复杂的格式化输出或输入。
当使用 C 标准库函数进行格式化输入和输出时,格式控制符允许您指定输出的格式,以及输入时期望接收的格式。以下是一些常用的格式控制符和其详细解释:
- 
%d: 以十进制形式输出整数。对应的参数应为int类型。
- 
%ld: 以长整型十进制形式输出整数。对应的参数应为long int类型。
- 
%u: 以无符号十进制形式输出整数。对应的参数应为unsigned int类型。
- 
%lu: 以无符号长整型十进制形式输出整数。对应的参数应为unsigned long int类型。
- 
%x,%X: 以十六进制形式输出整数,小写或大写字母。对应的参数应为unsigned int类型。
- 
%o: 以八进制形式输出整数。对应的参数应为unsigned int类型。
- 
%c: 输出一个字符。对应的参数应为char类型。
- 
%s: 输出一个字符串。对应的参数应为char*类型,指向要输出的字符串。
- 
%f: 以十进制形式输出浮点数。对应的参数应为double类型。
- 
%e,%E: 以指数形式输出浮点数,小写或大写字母。对应的参数应为double类型。
- 
%g,%G: 自动选择%f或%e(或%E)输出浮点数。对应的参数应为double类型。
- 
%p: 输出一个指针地址。对应的参数应为指针类型。
- 
%%: 输出一个百分号%。
- 
%n: 不输出任何字符,但会将已打印字符的数目赋值给参数。对应的参数应为指向int类型的指针。
这些格式控制符可以与其他修饰符一起使用,例如:
- %5d: 输出宽度为 5 的十进制整数。
- %10.2f: 输出宽度为 10,保留两位小数的浮点数。
这些控制符可以根据需要进行组合,以满足输出的格式要求。例如,%04d 可以用于在输出整数时将不足宽度的位置用零填充。

 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号