C++:从另一个函数访问字符串的任何方法
C++: Any way to access a string from another function?
代码:
#include <cstdio>
void f() {
printf("target_string");
}
int main(){
//any way to access target_string?
}
有什么办法做到这一点吗?
我知道如果我将字符串定义为全局变量,我可以很容易地实现这一点。
但是,实际上,我正试图探索C++的隐藏功能,我只是想知道这是否可能。。。
分解你的小程序,看看你的字符串存储在哪里。如果你的字符串被存储在某个函数或命令之后或之前五个字节,那么使用这些信息来定位你的字符串。使用指针指向你的字符串,然后访问它。
示例:
0xff7722: mov eax, 7 #beginn of your function
...
0xff7727: #your string
0xff7727 - 0xff7722 = 5;
void* pointer = &f;
f+=5;
f指向你的字符串。
如果编译器决定将指针放在字符串和函数之间,则指针可能指向错误的位置。
相关文章:
- 删除字符串中具有相同值的任何相邻字母"pair"
- 在处理任何字符大小的模板中使用字符串文本
- 如何创建一个模板化函数,可以在任何具有字符串键的 std::map 上运行?
- 为什么字符串没有更新并且最终没有打印任何内容
- 是否可以对任何语句字符串使用预准备语句?
- 如何在不进行任何其他修改的情况下"pretty print" C++的XML字符串?
- 如何将csv中的数据放入c++中的字符串向量中,而绝对没有任何作用
- 当我在将文件读取到C字符串的2D数组后尝试对任何内容进行定制时,C++分段错误
- 是否可以用类似C/C++(或任何语言)的语言,从作为用户输入的字符串或文件中创建用户定义的数据类型
- 当通过常量和不是字符串的最佳选择时,是否有任何情况?
- 构造字符串向量时是否有任何副本?
- C++ 复制字符串的指定索引之间的任何子字符串
- Cout 一个字符串可以打印任何内容到屏幕上
- 查找字符串是否包含字符串向量的任何一个元素的最佳方法
- 有人知道可以使用 c++ 以字节为单位编码 asm 字符串的任何东西吗?
- 我想知道如何将所有数值与没有任何空格的字符串分开,就像 123we45rt75 一样
- 字符串流在清除后不接受任何数据
- 任何C 字符串库,例如QString(或Java String)
- 除了字符串或宏调用之外,是否存在任何情况,其中"(<"是有效的字符流?
- 带有 std::的任何值unordered_map不能any_cast字符串