[問題] 不定參數的函式可以放指標嗎?

看板C_and_CPP (C/C++)作者 (輕子)時間12年前 (2014/01/16 11:36), 編輯推噓2(209)
留言11則, 7人參與, 最新討論串1/2 (看更多)
問題是這樣的,我參考 <stdarg.h> 發現可以實作不定參數的函式 我現在想寫一個一般化函式幫我處理記憶體配置 template<class T, int Nx>void HostMallocTest(int arg, n_pointer...) { //malloc all pointer Malloc( (void **) &kx, sizeof(T) * Nx); .... .... } 程式碼的示意圖大概是這樣, 我讀 stdarg.h 的感覺是沒辦法回傳資料,所以沒辦法處理指標 搜尋過版上、google沒有找到解,想請問各位有辦法實作這件事情嗎? 謝謝! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.115.214.4

01/16 11:38, , 1F
都用C++了, 用template解決就好啦
01/16 11:38, 1F
感謝提供方法,我會再找資料研究看看

01/16 13:34, , 2F
答案是當然可以, 不然 scanf 就不能做事了
01/16 13:34, 2F
有scanf的實作參考嗎?我爬不到資料....

01/16 14:32, , 3F
指標本身的大小是固定的啊, 是指標所指的東西大小不固定
01/16 14:32, 3F

01/16 14:33, , 4F
我自己剛學的時候常有這種錯覺, 想說你大概也是
01/16 14:33, 4F
我...看不懂你想要表達什麼...我要做的東西跟大小沒關係...吧?!! ※ 編輯: Lepton 來自: 140.115.214.4 (01/16 15:54)

01/16 16:09, , 5F
為什麼不直接用new就好?
01/16 16:09, 5F
因為這是CUDA,他要配置記憶體要依照他的API格式去處理

01/16 16:12, , 6F
他說的是指標本身大小固定 所以你可以正確定位那個參數
01/16 16:12, 6F

01/16 17:44, , 7F
抱歉我想法跳太遠了, 反正就是指標也是內定型態, 所以沒
01/16 17:44, 7F

01/16 17:44, , 8F
問題
01/16 17:44, 8F

01/16 18:00, , 9F
01/16 18:00, 9F

01/16 18:18, , 10F
你需要傳指標的參考或指標
01/16 18:18, 10F
感謝各位給出解答,讓我多學了東西 ※ 編輯: Lepton 來自: 140.115.214.4 (01/16 21:13)

01/16 22:00, , 11F
C++11 keyword : std::initializer_list
01/16 22:00, 11F
文章代碼(AID): #1IrrE-uQ (C_and_CPP)
文章代碼(AID): #1IrrE-uQ (C_and_CPP)