我刚刚开始广告我的学习,并且在一周前被介绍给c ++,我发现了令我恼火的东西:我有这样的基本代码
double a,b,c;
cout<<"please add in your values"<<endl;;
cout<<"a :";cin>>a;
cout<<"b :";cin>>b;
cout<<"c :";cin>>c;cout<<"\n";
dis(a,b,c);
return 0;
现在我还创建了一个函数(名称为dis),看起来像这样
void dis(double a,double b, double c){
double d;
double* p=&d;
d=(pow(b,2))-(4)*(a*c);
cout<<"result: "<<d;
cout<<*p;}
现在我知道如何实现我的结果 - 但它必须完成的方式让我紧张 - 所以我想创建一个指针,以便我可以抢夺值的地址并创建一个新的int等于存储在地址
上的值 现在我的问题
如果我知道任何值的地址,那么我如何从我的“主”中引用它,以便我可以创建一个包含答案的int,而不是像正常那样做?
我希望你知道我的意思:D
答案 0 :(得分:2)
你不能只是抓住记忆并希望别人知道它!
从函数传回数据的常规方法是通过其返回值。您的返回类型目前为void
(无返回值)。如果您改为编写double dis(...
,则可以在return d;
的末尾撰写dis
。
在main
中,您可以编写std::cout << "dis returned " << dis(a,b,c);