MFC中CString.Format的详细用法

CString 是一个类,这个类是MFC众多类中的一个。这个类有个函数叫Format,这个函数的作用是数据格式转换。

Format可以转换的格式字符:(就是说将其他格式的数据类型 转换为CString类型的)

%c                 单个字符

%d                 十进制整数(int)

%ld                十进制整数(long)

%f                 十进制浮点数(float)

%lf                十进制浮点数(double)

%o                 八进制数

%s                 字符串

%u                 无符号十进制数

%x                 十六进制数

×××××××××××××××××××××88

例子:int 类型转换为CSting类型

CString str;

int number=15;

//效果1

str.Format(_T"%d",number);

//这相当于 str="15";

//效果2

str.Format(_T("%4d"),number);

//str=" 15"(前面有两个空格;4表示将占用4位,如果数字超过4位将输出所有数字,不会截断)

//效果3

str.Format(_T("%.4d"),number);//注意小数点位置。

//str="0015"(.4表示将占用4位,如果数字超过4位将输出所有数字,不会截断)

long转换为CString的方法与上面相似,只需要把%d改为%ld就可以了。

×××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××

double转换为CString:

CString str;

double num=1.46;

//str="1.46"

str.Format(_T("%lf"),num);

//str="1.5"(.1表示小数点后留1位,小数点后超过1位则四舍五入)

str.Format(_T("%.1lf"),num);

//str="1.4600"

str.Format(_T("%.4f"),num);//小数点后面保留4位

//str=" 1.4600"(前面有1个空格)

str.Format(_T("%7.4f"),num);

float转换为CString的方法也同上面相似,将lf%改为f%就可以了。

×××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××

3、将十进制数转换为八进制:

CString str;

int num=255;

//str="377"

str.Format(_T("%o"),num);

//str="00000377"

str.Format(_T("%.8o"),num);

//其他的数据类型的转换 可以以此类推。

×××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××

 掌握以上技能就可以 使用WCQ的框架里面相关部分的功能啦。

原文地址:https://www.cnblogs.com/wenluderen/p/4835081.html