106得票3回答
C语言中平台无关的size_t格式说明符是什么?

我想在C语言中打印一个size_t类型的变量,但是在不同的架构上size_t被别名为不同的变量类型。例如,在一台机器上(64位),以下代码不会产生任何警告:size_t size = 1; printf("the size is %ld", size); 但在我的另一台机器上(32位),以上代...

68得票6回答
格式化字符串漏洞如何被利用?

我正在阅读关于代码漏洞的内容,发现了这个格式化字符串漏洞。 维基百科表示: 格式字符串漏洞最常见的出现是当程序员想要打印一个包含用户提供数据的字符串时。 程序员可能会错误地写 printf(buffer) 而不是 printf("%s", buffer)。第一个版本将 buffer ...

45得票4回答
如何在 FormatString 中使用百分号 %,而不使其乘以 100?

我想将一个整数格式化为百分比,而不会像这里所示那样乘以100。因为我的数据源是整数,所以首先除以100并不是一个有效的选项。这是否可能?[DisplayFormat(DataFormatString = "{0:#%}")]

39得票2回答
如何检查两个格式字符串是否兼容?

示例:"Something %d" and "Something else %d" // Compatible "Something %d" and "Something else %f" // Not Compatible "Somethi...

7得票4回答
为什么在格式字符串中,%p和%x的格式不同?

当输出十六进制值(%x)和地址(%p)时,格式稍有不同。在输出十六进制值时,打印的值不会以0x开头: int main() { int x = 0x1234; printf("Value of x: %x\n", x); printf("Address of x...

8得票3回答
在哪里保存常见的strftime字符串,例如("%d/%m/%Y")?

在我的应用程序中,我经常使用stftime,主要使用两个字符串格式 - ("%d/%m/%Y") 和 ("%H:%M")。 为了避免每次编写这些字符串,我想将这些字符串存储在某个全局变量或其他地方,以便我可以在应用程序中的一个地方定义格式字符串。 那么,Pythonic 的做法是什么?我应...

10得票1回答
为什么gcc -Wformat不会对unsigned int的printf %d进行警告?

以下程序具有未定义的行为:#include <stdio.h> int main(void) { unsigned int x = -100; // This is fine, becomes UINT_MAX - 100 printf("%d\n", x); /...

38得票4回答
在C语言中,%f和%lf之间有什么区别?

我在一本C语言书籍的例子中看到了这两个参数,但作者没有详细解释它们之间的区别。我知道%f表示应该放置一个float类型的值。我尝试过查找相关解释,但很难找到。那么%lf又是什么意思呢?

7得票2回答
格式化字符串和使用%n在内存地址上覆盖特定值

我正在了解和尝试学习格式化字符串漏洞。我有一个易受攻击的函数,并且我理解我需要用我的格式化字符串做些什么。 基本上,这是我想做的事情。传入我的格式化字符串,其中包含一些作为其一部分的shellcode。我还需要格式化我的字符串,以便易受攻击的函数的返回地址被替换,使其指向堆栈上的我的shel...

10得票4回答
在Java中,将带有"?"参数的字符串格式化为完整字符串的方法是什么?

例如,我想实现一个带有方法的类。public class Logger { public void info(String message, String[] params) { } } 如果输入是new Logger().info("Info: param1 is ? , ...