मैं समारोह पैरामीटर से डेटा सूचक वापस जाने के लिए कोशिश कर रहा हूँ के रूप में एक सूचक वापस जाने के लिए:कैसे एक समारोह पैरामीटर
bool dosomething(char *data){
int datasize = 100;
data = (char *)malloc(datasize);
// here data address = 10968998
return 1;
}
लेकिन जब मैं निम्नलिखित तरीके से फ़ंक्शन को कॉल करें, शून्य करने के लिए डेटा पते में परिवर्तन :
char *data = NULL;
if(dosomething(data)){
// here data address = 0 ! (should be 10968998)
}
मैं क्या गलत कर रहा हूं?
क्या आप वास्तव में सी का उपयोग कर रहे हैं या आप सी ++ का उपयोग कर रहे हैं (कुछ टिप्पणियां इंगित करती हैं कि आप सी ++ संदर्भों के बारे में बात करते हैं)। –
मैंने इसे सी ++ के रूप में चिह्नित नहीं किया क्योंकि मुझे यह पता नहीं था कि यह mattered है और लोग अक्सर शिकायत करते हैं कि "C++ thats c" नहीं है क्योंकि मैं malloc() का उपयोग कर रहा हूं ... – Rookie