作者QQ29 (我愛阿蓉)
看板C_and_CPP
標題Re: [問題] 關於void *一問
時間Tue Jul 14 12:27:30 2009
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
推 DRLai:剛剛改了一下,最後的輸出結果還是沒有變orz 07/14 12:32
→ DRLai:阿~有改變,我看錯了@@感謝m(_ _)m 07/14 12:33