以下C++代码不能按我的意愿工作。C++指向函数参数指针的指针
#include <string>
#include <iostream>
int Pointer_Function(char* _output);
int Pointer_to_Pointer_Function(char** text);
int main() {
char* input = "This";
printf("1. %s \n", input);
Pointer_Function(input);
printf("5. %s \n", input);
int test;
std::cin >> test;
}
int Pointer_Function(char* _output) {
_output = "Datenmanipulation 1";
printf("2. %s \n", _output);
Pointer_to_Pointer_Function(&_output);
printf("4. %s \n", _output);
return 0;
}
int Pointer_to_Pointer_Function(char** text) {
printf("3. %s \n", *text);
char* input = "HalliHallo";
text = &input;
printf("3.1. %s \n", *text);
return 0;
}
我希望作为结果的printf的5 HalliHallo代替Datenmanipulation。因为数据文本必须更改,因为&输入。
输出:
1.This
2. Datenmanipulation 1
3. Datenmanipulation 1
3.1 HalliHallo
4. Datenmanipulation 1
5. This
预期结果:
1.This
2. Datenmanipulation 1
3. Datenmanipulation 1
3.1 HalliHallo
4. HalliHallo
5. HalliHallo
我怎能舍弃指针指向函数的参数? 为什么我的代码无法使用?
我只是试图运行你的代码,它不适用于这种变化 –
它适用于我。 – Barmar
该代码作为发布作品:http://coliru.stacked-crooked.com/a/303981c6ed6884c4 – rubenvb