日志打印或者格式字符串时,可能会用到不定参数的使用,这里记录一下. 格式化字符串有很多方法: snprintf std::stringstream # ##的使用 ##是一个连接符号,用于把参数连在一起 #是"字符串化"的意思,出现在宏定义中的#是把跟在后面的参数转换成一个字符串 并且# ##都只能出现在宏定义中 include <stdio.h> #define test(n) printf("arg" #n " = %d\n",…
在初学C的时候,我们都会用到printf函数来写Hello World的程序.在我们看printf函数的声明时,会看到类似于下面代码 int printf(const char * __restrict, ...); 另外,在我们学习C和C++的时候,函数的声明总是确定个数和类型的,而我们在用printf的时候,却可以一次输出多个参数. 这就是我们要提的不定参数了. 在32位的C和C++编程中,函数调用是有规约的,并且各个编译器也基本达成了一致,尽管他们编译出的东西基本不能通用.关于调用规约的东…
Python中应该使用%还是format来格式化字符串?   %还是format Python中格式化字符串目前有两种阵营:%和format,我们应该选择哪种呢? 自从Python2.6引入了format这个格式化字符串的方法之后,我认为%还是format这根本就不算个问题.不信你往下看. # 定义一个坐标值 c = (250, 250) # 使用%来格式化 s1 = "敌人坐标:%s" % c 上面的代码很明显会抛出一个如下的TypeError: TypeError: not all…
1.对整数进行格式化:%[index$][标识][最小宽度]转换方式        我们可以看到,格式化字符串由4部分组成,其中%[index$]的含义我们上面已经讲过,[最小宽度]的含义也很好理解,就是最终该整数转化的字符串最少包含多少位数字.我们来看看剩下2个部分的含义吧: 标识: '-'    在最小宽度内左对齐,不可以与“用0填充”同时使用'#'    只适用于8进制和16进制,8进制时在结果前面增加一个0,16进制时在结果前面增加0x'+'    结果总是包括一个符号(一般情况下只适用…
.NET中DateTime.Now.ToString显示毫秒:DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff") DateTime.Now.ToString的其他格式化字符串:   格式化字符串 释义 示例 D long date Thursday, 10 April 2008 d short date 04/10/2008 F full date long Thursday, 10 April 2008 06:30:00 f full d…
Objective-C中,定义并使用带有不定参数个数的对象方法与C函数类似,规则上也要求不定参数列表中必须至少要有一个形参,然后参数列表的最后跟省略号表示不定参数.省略号不能放在参数当中部分,只能放在末尾. 比如: @interface MyObject : NSObject - (void)method:(id)param1 param2:(NSNumber*)param2, ...; @end @implementation MyObject - (void)method:(id)param…
参数args 参数args可以是一个参数序列,也可以是一个单独的字符串.参数序列通常是首选的,因为它允许模块处理参数的转义和引号(例如,允许文件名中有空格). 如果传递参数序列,默认情况下,程序执行序列的第一个元素,后面所有的元素都作为参数. 如果传一个单独字符串,要么参数shell为True,要么字符串必须没有指定任何参数的可执行程序的名称. 所以,一般的搭配是参数序列和shell=False,字符串和shell=True. 参数shell shell参数设置是否在单独的shell中执行命令.…
0.序言 使用printf函数,其参数就是可变参数.下面将使用 C语言  的库函数实现可变参数的函数 . 用途(欢迎补充): A.记录日志,可能需要将变量格式化输出到日志文件. B.格式化字符串,显示结果(A差不多). 1.使用 A.头文件 // 使用va_start需要的头文件 #include <stdarg.h> B.必须使用下面的3个宏 : va_list    va_start    va_end C.使用函数: snprintf       (sprintf的升级版,避免缓冲区溢出…
此方法实现的是将查询表中的某个字段,格式化成  字符串1,字符串2,字符串3...的格式 假设我们现在有两个表 分别是 分组表 grouped和分组成员表 groupuser grouped表有连个字段 id ,groupname groupuser表有id,groupid,userid,username 四个字段 两个表存储的是每一个分组下,对应的成员都有谁 分组表 id groupname group1 科研小组 group2 审计小组 分组成员表 id groupid  userid  u…