我花了几天时间试图理解指针,但语法仍然让我感到困惑.
当你写下发言时,这个宣言int *ptr;之间ptr和*ptr之后有什么区别?
在K&R中,他们从这个例子开始关于指针的章节:
int x = 1, y = 2, z[10];
int *ip; /* ip is a pointer to int */
ip = &x; /* ip now points to x */
y = *ip; /* y is now 1 */
*ip = 0; /* x is now 0 */
ip = &z[0]; /* ip now points to z[0] */
Run Code Online (Sandbox Code Playgroud)
这让我认为*ip用于整数值(因为*ip声明为int),而plain ip用于地址,而ip(&x)将"指向" *ip(x …