- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
此 sprintf_s 命令中的格式控制说明符“%S\%016I64X%S”是什么意思?
据我所知,它定义了一个字符串,它将数字转换为十六进制格式的无符号 64 位整数。我想知道我是否正确?请帮帮我..
char lFileName[MAX_PATH];
sprintf_s( lFileName, MAX_PATH, "%S\\%016I64X%S", mSavePath.GetBuffer(),aBuffer->GetTimestamp(), lExt );
最佳答案
首先,它看起来像一个 Visual C++ 用法
int sprintf_s(char *buffer, size_t sizeOfBuffer, const char *format, ...);
"%S"
,
"\\"
,
"%016I64X"
,
"%S"
.
"%S"
"当与 printf 函数一起使用时,指定一个宽字符串;..."
more
"\\"
只是一个
\
.
"%016I64X"
是
X
十六进制输出的格式说明符。
0
根据需要指示补零。
16
表示最小输出长度。
I64
是一个特定于 Windows 的修饰符,指示预期的整数是特定于 Windows 的类型
unsigned __int64
.
more
关于string-formatting - sprintf_s中的格式控制说明符%016I64X是什么意思,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18123066/
我想写入数据到一个字符缓冲区。因此,我有一个格式化我的数据的功能。例如,我只是像这样将一个 int 值传递给函数: using namespace std; #include char* write
Visual Studio 提示我将 sprintf 替换为 sprintf_s,而不是 snprintf。 sprintf_s 不需要长度参数,它如何避免缓冲区溢出问题? 最佳答案 有两个版本。一种
我在使用 C/C++ 程序的 Windows 上的 Visual Studio 中收到“0xC0000005:访问冲突读取位置错误”,并尝试简化以说明我的问题。下面的代码运行得很好: char tmp
已关闭。此问题需要 debugging details 。目前不接受答案。 编辑问题以包含 desired behavior, a specific problem or error, and the
我有一个使用 sprintf_s 的 C 程序。它在 Windows 中工作正常,但是当我在 Linux 中编译代码时,出现以下错误: sprintf_s was not declared in th
我在 sprintf_s 中偶尔执行以下代码时发生崩溃。这段代码工作了很多年,没有任何问题。当我按照下面的语句在 strcat_s 和 sprintf_s 中给出大小时,不会出现崩溃。这可能是什么原因
我遇到了问题。示例: try { char strMes[6]; sprintf_s(strMes, sizeof(strMes), "%s", "012345678"); p
我在使用这个函数时遇到了一个有趣的问题。我使用它如下: int nSeq = 1; char cBuf[8]; int j = sprintf_s(cBuf, sizeof(cBuf), "%08d"
包含 banned.h(微软安全工具之一)后,编译器警告我 sprintf() 函数不安全,MSDN 中心给了我使用 的建议sprintf_s,因为我的项目是跨平台的,所以我写了一个sprintf函数
以下代码会导致错误并终止我的应用程序。这是有道理的,因为缓冲区只有 10 个字节长,而文本有 22 个字节长(缓冲区溢出)。 char buffer[10]; int length = spri
我有一个使用 sprintf_s 的 C 程序。它在 Windows 中运行良好,但是当我在 Linux 中编译我的代码时出现此错误: sprintf_s was not declared in th
对于新项目,我应该更喜欢哪个功能?来自 strsafe.h 或 sprintf_s 的 StringCchVPrintf 最佳答案 我建议使用 snprintf如果您使用 C 编写代码(因为 snpr
我正在尝试创建一个类,比如说 MyClass,在以下条件下工作: MyClass name = "everyone"; // Assigns "everyone" into a local str
这是我从 int 到 char* 的转换: char* str = malloc(sizeof("0000")); int int_ = 10; sprintf_s(str, sizeof("0000
我有一个 C++ 应用程序,其中客户报告了一个崩溃。但是崩溃不容易重现。在分析了一些日志之后,我发现崩溃可能发生在以下代码部分之间。请告诉我,如果我在其中包含这些代码语句,应用程序是否有可能崩溃?
在 C++ 中,使用 VS2012,我想获取 Mac 地址并将其转换为汽车格式。我使用 sprintf_s function() 以便在汽车模式下进行转换。在 Debug模式下,一切正常,但在 Rel
我正在使用来自 C# 的 C++ dll(不是我的)。我使用 Console.SetOut 和 Console.SetError 成功地将 C# 控制台输出重定向到一个文件。 有什么办法可以从“外部”
我正在尝试使用 WCHAR 中的 sprintf_s 创建一个新字符串。我的代码如下所示: #include #include void main(int argc, char ** argv)
这是工作的原始代码: // ... unsigned __int64 num = 57; sprintf_s(buffer, sizeof(buffer), "%llu", num); 但是,当我尝试
我写了一个跨平台代码,给出了当前日期 (mm/dd/yy) 和时间 (hh/mm/ss) 和完整日期 (yyyymmdd),此代码适用于 windows(MSVS2015) 但不适用于Linux(GC
我是一名优秀的程序员,十分优秀!