#include<stdio.h>
void swap(int *p1,int *p2){
int temp;
temp = *p1;
*p1 = *p2;
*p2 = temp;
}
void main(){
int a = 1,b = 2;
int *p1 = &a,*p2 = &b;
printf("a=%d,b=%d",a,b);
swap(p1,p2);
printf("a=%d,b=%d",a,b);
}
1.p1,p2为指针变量,值为a,b地址。
2.swap实现将指针p1,p2指针指向的对象的值交换。
3.printf中的符号含义:
%d:输入输出为整形 %ld 长整型 %hd短整型 %hu无符号整形 %u %lu
%s:输入输出为字符串 %c字符
%f:输入输出为浮点型 %lf双精度浮点型
#include<stdio.h>
int main(){
int a = 1,b = 10;
int *p1=&a,*p2=&b;
printf("a的地址为%d\n",p1);
printf("b的地址为%d\n",p2);
printf("*(p1-1)的值为%d\n",*(p1-1));
return 0;
}
1.数据保存在栈中,地址由高到底,int型数据为4个字节,a,b地址相差4个字节。
2.*