Re: [問題] 關於void *一問
bool xxx( long id, void *arg ) {
long new_test = 3;
*(long*)arg = new_test;
return true;
}
int main() {
long test = 5;
cout<<"目前的test: "<<test<<endl;
xxx( 3, (void*)&test );
cout<<"目前的test: "<<test<<endl;
return 0;
}
這樣傳應該可以改~變成3
※ 引述《DRLai (蘇打)》之銘言:
: 想請問,有辦法更改void *的值嗎?
: 我有一個function定義如下
: bool xxx( long id, void *arg ) {
: long new_test = 3;
: arg = (void*)new_test;
: return true;
: }
: 主程式如下
: int main() {
: long test = 5;
: cout<<"目前的test: "<<test<<endl;
: xxx( 3, (void*)test );
: cout<<"目前的test: "<<test<<endl;
: return 0;
: }
: 而呼叫時,我希望透過這個function能改變test的值
: 不過似乎有地方寫錯,導致test的值不會改變
: 請高手給個方向讓我參考一下
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.113.207.187
推
07/14 12:32, , 1F
07/14 12:32, 1F
→
07/14 12:33, , 2F
07/14 12:33, 2F
討論串 (同標題文章)
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章