记录学习C的指针学习记录
指针篇
1.指针初始化、赋值
#include <stdio.h>
int main()
{
int a = 1;
int *p=&a; //在定义的同时初始化
printf("这是赋值前的a:%d\n",a);
*p=100; //赋值给指针
printf("这是赋值后的a: %d",a);
}2.用指针互换两int
#include <stdio.h>
void swap(char *v1,char *v2)
{
char temp;//定义中间变量
temp = *v2; //取V2赋值的值
*v2=*v1; //将V1的值赋值给V2
*v1=temp; //将temp的值赋值给V1
}
int main()
{
char a = 1,b=2;
swap(&a,&b);
printf("a=%d,b=%d",a,b);
return 0;
}
指针遍历数组
1 // 定义一个int类型的数组
2 int a[4] = {1, 2, 3, 4};
3
4 // 定义一个int类型的指针,并指向数组的第0个元素
5 int *p = a;
6
7 int i;
8 for (i = 0; i < 4; i++) {
9 // 利用指针运算符*取出数组元素的值
10 int value = *(p+i);
11
12 printf("a[%d] = %d \n", i, value);
13 }注意的是*(p+i)表示第i个元素的地址访问的储存空间
==int value = *(p++);,注意的是 int value=*(a++)是错误的,a是常量。

还不快抢沙发