करने के लिए सामग्री मैंने सोचा कि मैं कहीं पढ़ा है कि जब संकेत का उपयोग कर और हम एक से दूसरे की सामग्री की नकल करने के लिए दो विकल्प हैं कि चाहते हैं:कॉपी एक सूचक एक और
- का उपयोग कर memcpy या
- बस उन्हें = के साथ असाइन करना?
हालांकि कम उदाहरण में, मैं सिर्फ यह दो संकेत के लिए स्मृति आवंटन, तो दूसरा बताए, first..but तो मेरी दूसरी सूचक के प्रवेश बदलते भी बदल रहा है .. मैं गलत क्या कर रहा हूँ द्वारा परीक्षण किया : /।
typedef struct {
int a;
int b;
int c;
} my_struct;
int main(int argc, char** argv) {
my_struct* first = malloc(sizeof(my_struct));
first->a = 100; first->b = 101; first->c = 1000;
my_struct* bb = malloc(sizeof(my_struct));
printf("first %d %d %d\n", first->a, first->b, first->c);
bb = first;
printf("second %d %d %d\n", bb->a, first->b, bb->c);
first->a = 55; first->b = 55; first->c = 89;
printf("second %d %d %d\n", bb->a, first->b, bb->c);
}
@MDXF: मुझे नहीं लगता कि कैसे 'strdup() 'दूरस्थ रूप से प्रासंगिक है। अगर टिप्पणियों को कम किया जा सकता है, तो मैं सुझाव को कम वोट दूंगा। –