आमतौर पर जब आप (जैसे कि एक पूर्णांक के रूप में) एक सूचक की घोषणा आप इसे करने के लिए एक स्मृति पता निर्दिष्ट करना होगा: जब आप एक चार सूचक बनानेआप एक char सूचक को सरणी क्यों आवंटित कर सकते हैं?
int value = 123;
int* p = &value;
, आप एक चार सरणी इसे करने के लिए बिना प्रदान कर सकते हैं एक पता शामिल करने की आवश्यकता:
char* c = "Char Array";
यह कैसे काम करता है? क्या यह स्मृति आवंटित करता है और उस पर इंगित करता है? अन्य प्रकार के पॉइंटर्स एक ही काम क्यों नहीं कर सकते हैं?
आप उदाहरण के लिए ऐसा नहीं कर सकते: 'char * c = &'a';' –
ध्यान दें कि 'char * c =" char array "' C++ में संकलित नहीं होगा; क्या आप सी के बारे में पूछना चाहते थे? – edmz
@ डैनियल आपका सी ++ कंपाइलर बेकार है अगर यह आपको कम से कम चेतावनी नहीं देता है। –