要自增 p 指向的值, 使用(*p)++, 如果副作用的顺序无关紧要也可以使用 ++*p。
3. 我有一个char*型指针正巧指向一些int型变量,我想跳过它们。为什么如下的代码不行?...我能否用void**指针作为参数, 使函数按引用接收一般指针?
答:不可以。C中没有一般的指针的指针类型。...void*可以用作一般指针只是因为当它和其它类型相互赋值的时候, 如果需要, 它可以自动转换成其它类型; 但是, 如果试图这样转换所指类型为void*之外的类型void** 指针时, 这个转换不能完成。...下面这样的调用似乎不行
f(&5);
答:在 C99 中, 你可以使用 “复合常量”:f((int[]){5});在C99之前,你不能直接这样做;你必须先定义一个临时变量,然后把它的地址传给函数:...C有“按引用传递”吗?
答:真的没有。严格地讲,C总是按值传递。你可以自己模拟按引用传递, 定义接受指针的函数,然后在调用时使用 & 操作符。