C++ C++;,带十六进制参数的sprintf
我试图理解以下代码:C++ C++;,带十六进制参数的sprintf,c++,c,C++,C,我试图理解以下代码: char temp[50]; sprintf(temp,"%04XT1000A",Edit3->Text.ToInt()); 我知道T1000A是一个简单的字符串,我知道它的含义,但是%04X是什么?%04X是否完全被参数替换?%04是一个格式说明符修饰符,表示如果输出少于4个字符,则应在左侧填充0%X是标准格式说明符,意味着打印无符号十六进制,使用大写字母表示A-F。请查看文档。%04是一个格式说明符修饰符,表示如果输出少于4个字符,则应在左侧填充0%X是标准格式
char temp[50];
sprintf(temp,"%04XT1000A",Edit3->Text.ToInt());
我知道T1000A是一个简单的字符串,我知道它的含义,但是%04X是什么?%04X是否完全被参数替换?
%04
是一个格式说明符修饰符,表示如果输出少于4个字符,则应在左侧填充0
%X
是标准格式说明符,意味着打印无符号十六进制,使用大写字母表示A-F。请查看文档。%04
是一个格式说明符修饰符,表示如果输出少于4个字符,则应在左侧填充0
<代码>%X是标准格式说明符,意味着打印无符号十六进制,使用大写字母表示A-F。请查看文档。@artworkadシ 顺便说一句,这比c++
更具体。也许你应该加上标签?@伊瓦洛斯特兰杰夫:什么让你觉得它不是C++?在C++规范中,明确定义了<代码> Prtff <代码>函数族。在某些情况下,将snprintf
用于缓冲区比使用std::ostringstream
@ThomasMatthews更简单,这就是为什么我认为应该用这两个标记来标记问题。其想法是,使用c的人也应该能发现它。@artworkadシ 顺便说一句,这比c++
更具体。也许你应该加上标签?@伊瓦洛斯特兰杰夫:什么让你觉得它不是C++?在C++规范中,明确定义了<代码> Prtff <代码>函数族。在某些情况下,将snprintf
用于缓冲区比使用std::ostringstream
@ThomasMatthews更简单,这就是为什么我认为应该用这两个标记来标记问题。其想法是,使用c的人也应该能够发现它。