C语言编程入门教程:指针变量的定义与注意事项

需积分: 15 1 下载量 5 浏览量 更新于2024-03-16 收藏 1.13MB PPT 举报
指向整型变量的地址,如:p1=&i; p1不能指向float型变量a的地址,会造成错误。 ③ 指针变量的类型应与其指向的变量类型相匹配。 int *p2; p2=&a; 这样也会发生错误。 ④指针变量在定义时未赋初值,称为空指针。 int *p3=NULL; 指针变量的赋值 指针变量指向变量的地址,并不是值,故其赋值时应加&符号表示地址。 int i=5; int *p=&i; *p=10; printf("i=%d\n",i); 上述代码将输出i=10。 指针变量的运算 指针变量可以进行加减运算: int a[5]={1,2,3,4,5}; int *p=a; printf("%d\n",*p); p++; printf("%d\n",*p); 上述代码输出结果为1和2,p++表示指针向后移动一个位置。 指针变量的应用 指针变量常用于函数参数传递、动态内存分配等场景。 void swap(int *a,int *b){ int temp=*a; *a=*b; *b=temp; } int main(){ int i=1,j=2; swap(&i,&j); printf("i=%d,j=%d\n",i,j); return 0; } 上述代码交换了i和j的值。 动态内存分配 可以使用指针变量动态分配内存,实现灵活使用内存的目的。 int *p=(int *)malloc(sizeof(int)); *p=10; 释放内存时应使用free函数: free(p); 注意防止内存泄漏。 指针变量的概念对于初学者来说可能比较抽象,但掌握了指针变量的定义、赋值、运算和应用等基本操作,能够极大提高程序的灵活性和效率。希望通过本文的介绍,读者能够对指针变量有更深入的理解,从而在C语言编程中更加游刃有余。