如题所述
意思就是,指针是指向内存这个知道吧。
你数组在内存上占用一小块区域,但是指针只是指向内存,并不管这一段内存和什么东西有任何关联,所以如果处理不当就会"越界"。
比如字符串,很多人用\0来判断字符串是否结束,然而在有些编译器里面,字符串可以被填入和声明的时候一样的多的字符,导致这样根本没有\0的存在,于是指针就会一直读内存读下去,直到读到\0为止(比如vc++6.0就是)。追问
你数组在内存上占用一小块区域,但是指针只是指向内存,并不管这一段内存和什么东西有任何关联,所以如果处理不当就会"越界"。
比如字符串,很多人用\0来判断字符串是否结束,然而在有些编译器里面,字符串可以被填入和声明的时候一样的多的字符,导致这样根本没有\0的存在,于是指针就会一直读内存读下去,直到读到\0为止(比如vc++6.0就是)。追问
那句话愿意会不会是:
即使指针指向数组后面一个位置是有效的,也不能解引用这样的越界指针。
是的,指针只是辅助你对内存进行操作,维护好他的正常工作就行
温馨提示:答案为网友推荐,仅供参考