【发布时间】:2012-03-02 00:05:25
【问题描述】:
我想将int 值保存到指针变量中。但我得到一个错误:
#include <iostream>
using namespace std;
int main()
{
int *NumRecPrinted = NULL;
int no_of_records = 10;
NumRecPrinted = (int*)no_of_records; // <<< Doesn't give value of NumRecPrinted
cout << "NumRecPrinted!" << NumRecPrinted;
return 0;
}
我试过这样做,但我得到 0 作为回报:
int main()
{
int demo(int *NumRecPrinted);
int num = 2;
demo(&num);
cout << "NumRecPrinted=" << num; <<<< Prints 0
return 0;
}
int demo (int *NumRecPrinted)
{
int no_of_records = 11;
NumRecPrinted = &no_of_records;
}
NumRecPrinted 返回为 0
【问题讨论】:
-
你从来没有告诉我们错误是什么。
-
您为什么要这样做?将整数转换为指针的充分理由很少,所以我想知道您正在尝试做的事情是否可能无法以其他方式更好地实现。还是您的意思是获取指向整数的指针?
-
我在一个需要返回指针的函数中执行此操作。
-
在您的
demo函数中,您修改NumRecPrinted以指向一个局部变量...它在demo之外没有用... -
@AJ。我希望你没有计划a hotel heist。