目录
指针习题
1、*p++
2、*p
3、(*p)++
4、p
5、++*p
6、*p
7、*++p
8、++(*p)
指针习题
#include<stdio.h>
#include<string.h>
int main(int argc, char const *argv[])
{char buf[32]="helloworld";char *p = buf;printf("%c\n",*p++);printf("%c\n",*p);printf("%c\n",(*p)++);printf("%s\n",p);printf("%c\n",++*p);printf("%c\n",*p);printf("%c\n",*++p);printf("%c\n",++(*p));return 0;
}
1、*p++
先取*p,再p++。输出结果为'h'
h | e | l | l | o | w | o | r | l | d | \0 |
p |
2、*p
在上一步的基础上,结果为'e'
h | e | l | l | o | w | o | r | l | d | \0 |
p |
3、(*p)++
先取*p,然后内容++
h | f | l | l | o | w | o | r | l | d | \0 |
p |
4、p
%s,输出为字符串,结果为"flloworld"
5、++*p
前置++,先取*p,再内容+1
h | g | l | l | o | w | o | r | l | d | \0 |
p |
6、*p
在上一步的基础上,输出结果为'g'
h | g | l | l | o | w | o | r | l | d | \0 |
p |
7、*++p
先计算++p,再取内容,输出结果为'l'
h | e | M | l | o | w | o | r | l | d | \0 |
p |
8、++(*p)
先取*p内容,然后再++,输出结果为'M'