*b++==*(b++)

#define _CRT_SECURE_NO_WARNINGS
#include <stdlib.h>
#include<stdio.h>
#include <string.h>

void swap(char a,char b)
{
	char tmp = a;
	a = b;
	b = tmp;
}


int main()
{
	char *a ;
	char *b;
	a = malloc(8);

	strcpy(a,"GOBLIN");

	printf("len a:%d\n",strlen(a));

	b = a+strlen(a)-3;

	printf("a:%c\n",a[5]);

	printf("b:%s\n",a+3);

	swap(a[3],a[4]);


	printf("c:%s\n",a);

	printf("d:%c\n",*b);

	*(b++)='\0';

	printf("e:%s\n",a);//GOB

	printf("f:%d\n",strlen(b));//2

	free(a);
	
	system("pause");
	return 0;
}

举例:
    ++a=++b;

    执行顺序是:

    a=a+1;

    b=b+1;

    a=b;

后置运算:
举例:
    a++=b++;

    a=b;

    a=a+1;

    b=b+1;

再回到你上面的问题:
*a++=*b++;
执行顺序是:
*a;
*b;
*a=*b;
a++;

b++;

#define _CRT_SECURE_NO_WARNINGS
#include <stdlib.h>
#include<stdio.h>
#include <string.h>

void display()
{
	int a[]={1,3,5,7,9};

	int *p = a;

	//printf("a:%d\n",*p++);//1
	//printf("a:%d\n",*(p++));//1
	//printf("a:%d\n",(*p));//1
	//printf("a:%d\n",++(*p));//2
	//printf("a:%d\n",*++p);//3
	//printf("a:%d\n",*(++p));//3
	//printf("a:%d\n",++*p);//2
}
int main()
{

	display();
	system("pause");
	return 0;
}
注意display()函数中的printf语句单独运行的结果!


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值