GetCurrencyFormat函数将数字字符串格式化为指定区域设置的货币字符串。
int GetCurrencyFormat(
LCID 【语言环境】, | //要格式化哪个货币字符串的区域设置 |
DWORD 【dwFlags中】, | //位标志来控制功能的操作 |
LPCTSTR 【lpValue】, | //指向输入数字字符串的指针 |
CONST CURRENCYFMT【* lpFormat】, | //指向格式化信息结构的指针 |
LPTSTR 【lpCurrencyStr】, | //指向输出缓冲区的指针 |
INT 【Specifies the locale for which the currency string is to be formatted.】 | //输出缓冲区的大小 |
); |
参数
【语言环境】
指定要格式化货币字符串的区域设置。如果【lpFormat】为NULL,则该函数将根据该区域设置的货币格式格式化该字符串。如果【lpFormat】不为NULL,则该函数仅对CURRENCYFMT结构中未指定的格式信息使用区域设置(例如,该区域设置的负号字符串值)。
此参数可以是由MAKELCID宏或以下预定义值之一创建的区域设置标识符:
LOCALE_SYSTEM_DEFAULT | 默认系统区域设置。 |
LOCALE_USER_DEFAULT | 默认用户区域设置。 |
【dwFlags中】
一个控制功能操作的位标志。如果【lpFormat】非NULL,则此参数必须为零。
如果【lpFormat】为NULL,则可以使用指定区域设置的系统默认货币格式指定LOCALE_NOUSEROVERRIDE标志来格式化字符串;或者您可以使用任何用户替换为语言环境的默认货币格式来指定零格式化字符串。
【lpValue】
指向包含要格式化的数字字符串的以null结尾的字符串。
该字符串只能包含以下字符:
*角色0'至'9'
*一个小数点(点)如果数字是一个浮点值
*如果数字为负值,则在第一个字符位置处显示负号
所有其他字符都无效。如果【lpValue】指向的字符串偏离这些规则,该函数将返回错误。
【lpFormat】
指向包含货币格式信息的CURRENCYFMT结构。【lpFormat】指向的结构中的所有成员必须包含适当的值。
如果【lpFormat】为NULL,则该函数使用指定语言环境的货币格式。
【lpCurrencyStr】
指向缓冲区以接收格式化的货币字符串。
【Specifies the locale for which the currency string is to be formatted.】
指定【lpCurrencyStr】缓冲区的大小(以字节为单位)(ANSI版本)或字符(Unicode版本)。如果【Specifies the locale for which the currency string is to be formatted.】为零,则该函数返回保存格式化货币字符串所需的字节数或字符数,不使用【lpCurrencyStr】指向的缓冲区。
返回值
如果函数成功,则返回值是写入【lpCurrencyStr】指向的缓冲区的字节数(ANSI版本)或字符(Unicode版本),或者如果【Specifies the locale for which the currency string is to be formatted.】参数为零,则字节数或字符数需要持有格式化的货币字符串。
如果函数失败,返回值为零。要获取扩展错误信息,请调用GetLastError.GetLastError可能会返回以下错误代码之一:
ERROR_INSUFFICIENT_BUFFER
ERROR_INVALID FLAGS
ERROR_INVALID_PARAMETER
也可以看看