文章目录
一、判定指针合法性
二、数组越界
三、不断修改指针变量值
四、函数中将栈内存数组返回
五、函数间接赋值形参操作
六、指针取值与自增操作
一、判定指针合法性
----
判定指针合法性时 , 必须进行如下判断..., 后面第
4
个字节是 \0 字符 ;
// 错误示例
char str[3] = "abc";
三、不断修改指针变量值
----
凡是涉及到修改 指针 变量值时 , 不要直接修改 原来的 指针变量...;
建议 创建一个 临时局部指针变量 , 接收该 形参指针 , 需要修改 指针 时 , 修改 临时局部指针变量 ;
六、指针取值与自增操作
----
对于指针 * 和 ++ 同时操作时 , 如 :
*...p++;
特别注意 , 后缀 ++ 操作优先级高 , 先执行 *p 操作 , 然后地址 ++ ;
上述语句执行后 , 指针指向的地址就改变了 ;
对于不确定的操作 , 建议使用 () 设置操作优先级 ;...将 指针 指向的地址 中存储的 值 自增 : 先取出值 , 然后自增 ;
(*p)++ ;
先将地址自增 , 然后再取值 :
*(p++);