1
找不到答案。當我對指針將指針傳遞到函數中
char **buffer;
指針,我想將它傳遞給函數
void some_func(char **buffer) {}
打完這個函數調用緩衝區將從這個功能包含數據,我應該怎麼稱呼這個功能嗎?
找不到答案。當我對指針將指針傳遞到函數中
char **buffer;
指針,我想將它傳遞給函數
void some_func(char **buffer) {}
打完這個函數調用緩衝區將從這個功能包含數據,我應該怎麼稱呼這個功能嗎?
它是正確的,但事實是,你通過這個指針,指針
// initialize it
char** buffer;
void some_func(char ***buffer) {} // by reference
和在函數調用:通過值,使得經指針傳遞它
some_funct(&buffer);
some_func(&buffer);
這就是您需要的呼叫。
,功能應該是...
void some_func(char ***buffer) {}
爲了操縱緩衝...
*buffer = something;
根據函數的不同,返回一個新指針可能會更簡單或者更容易混淆 - 使得函數「char ** func(char **)'。 – nneonneo
如果你只想修改'buffer'的內容,而不是指針本身,你可以調用:'some_func(buffer);' –
目前還不清楚你想做什麼。當你第一次調用函數時,'buffer'是否會包含任何東西? –