第 11 章 memstomp
memstomp 是一个命令行工具,可用于在各种标准不允许此类重叠时识别带有重叠内存区域的功能调用。它截获对 表 11.1 “memstomp 检查函数调用” 中列出的库函数调用,以及每个内存重叠,它会显示一个详细的回溯追踪来帮助您调试问题。
与 Valgrind 类似,memstomp 工具会检查应用程序,而无需重新编译它们。但是,它比这个工具快,因此作为方便的替代工具。
Red Hat Developer Toolset 带有 memstomp 0.1.5。
| 功能 | 描述 |
|---|---|
|
| 将 n 字节从一个内存区域复制到另一个内存区域,并将指针返回到第二个内存区域。 |
|
| 将一个内存区域的最大 n 字节复制到另一个内存区域,并在找到特定字符时停止。如果找不到给定字符,它将指针返回到上次写入字节之后的字节;或者返回 NULL。 |
|
| 将 n 字节从一个内存区域复制到另一个内存区域,并在上一次写入字节后向字节返回指针。 |
|
| 将字符串从一个内存区域复制到另一个内存,并将指针返回到第二个字符串。 |
|
| 将字符串从一个内存区域复制到另一个内存,并将指针返回到第二个字符串的终止 null 字节。 |
|
| 将最多 n 个字符从一个字符串复制到另一个字符串,并将指针返回到第二个字符串。 |
|
| 将最多 n 个字符从一个字符串复制到另一个字符串。它会返回一个指针到第二个字符串的终止 null 字节,或者如果字符串不是 null-terminated,则指向上一次写入字节后面的字节的指针。 |
|
| 将一个字符串附加到另一个字符串,同时覆盖第二个字符串的终止 null 字节,并在其末尾添加一个新字符串。它将指针返回到新字符串。 |
|
| 将最多 n 个字符从一个字符串附加到另一个字符串,同时覆盖第二个字符串的终止 null 字节,并在其末尾添加一个新字符。它将指针返回到新字符串。 |
|
|
与 |
|
|
与 |
|
|
与 |
|
|
与最广泛字符() 功能等效的功能,它将一个数组中最多 n wide 字符复制到另一个数组,并将指针返回到第二个字符串。 |
|
|
与 |
|
|
最大型字符等效于一个数组中最多的 n wide 字符,同时覆盖第二个广泛字符串终止的 null 字节,并在其末尾添加一个新字符。 |
11.1. 安装 memstomp 复制链接链接已复制到粘贴板!
在 Red Hat Developer Toolset 中,memstomp 工具由 devtoolset-9-memstomp 软件包提供,并自动安装 devtoolset-9-toolchain,如 第 1.5 节 “安装 Red Hat Developer Toolset” 所述。