当我们在写程序的时候,字符串的处理频率是相当高的。比如像数字转换为字符,或者字符转换为整型、双精度型等,如果能够妙用字符串的功能,将会起到事半功倍的效果,这又何乐而不为呢。
根据msdn的解释:
支持两种转换格式,如下所示
void format( lpctstr lpszformat, ... );
其中参数lpszformat 是格式控制字符串,
void format( uint nformatid, ... );
其中参数nformatid 是资源号,比如字符串资源中的编号。
其中调用这个函数的功能是能够想sprintf格式化转换一样,
例如下面这个例子。
cstring str;
str.format(_t("floating point: %.2f\n"), 12345.12345);
_tprintf("%s", (lpctstr) str);
str.format(_t("left-justified integer: %.6d\n"), 35);
_tprintf("%s", (lpctstr) str);
str.format(ids_score, 5, 3);
_tprintf("%s", (lpctstr) str);
其中ids_score是字符串资源中的一个标志符。里面包含的内容为"penguins: %d\nflyers : %d\n"
那么这两个字符串的输入为:
floating point: 12345.12
left-justified integer: 000035
penguins: 5
flyers : 3
所以如果要用到比较通用的字符串时,可以把这个字符串定义为资源里面的id,这样修改起来会更方便、更快捷。