• 简单说一下printf("%*s%s",xx,xx,xx);或printf("%*s ",xx,xx);


    大家还记得这个例子吗

      1 #include "public.h"
      2 
      3 int main()
      4 {
      5     int a=4;
      6     printf("%4d
    ",a);
      7     return 0;
      8 }

    这个输出结果为:

        4

    前面有三个空格

    这里的printf("%*s",1,2)和它类似

    "*"表示的是占多少位置

    第一个s表示的是字符串

    第一个参数是占多少位,第二个参数为字符串,两个结合起来的意思就是字符串占多少位,如果不够那么多位左边用空格来补齐.可能我说的不是太明白,下面用代码来说明吧.

      1 #include <stdio.h>
      2 
      3 int main()
      4 {
      5     char *s="12345";
      6     char ss='a';
      7     printf("%*s
    ",10,s);
      8     printf("%*c
    ",4,ss);
      9 }

    ###gcc text.c
    ###./a.out 
         12345
       a
    ###

    大家可以看到12345前面有五个空格,加上12345总的有10位,a前面有三个空格,加上a总的有四位.

  • 相关阅读:
    Node.js 究竟是什么?
    天津自考学习之“六步看书法”
    C专家编程cdecl
    Linux系统启动流程及安装命令行版本
    Java学习路线
    GCC内置宏
    GMP
    二级存储构建倒排索引
    余弦距离与欧式距离
    af
  • 原文地址:https://www.cnblogs.com/linuxnewbie/p/3897487.html
Copyright © 2020-2023  润新知