指针传参

mac2024-11-04  11

一级指针传参

传一维数组

#include<stdio.h> #include<stdlib.h> int point(int* arr) { for (int i = 0; i <= 3; ++i) { printf("%d\t", arr[i]); } } int main() { int arr[] = { 1, 2, 3, 3 }; point(arr);//数组名指向数组第一个元素的地址,可以作为指针直接传递 system("pause"); }

传指针

#include<stdio.h> #include<stdlib.h> int point(int* arr) { for (int i = 0; i <= 3; ++i) { printf("%d\t", arr[i]); } } int main() { int arr[] = { 1, 2, 3, 3 }; point(&arr);//传指针 system("pause"); }

二级指针传参

#include<stdio.h> #include<stdlib.h> int point(int** ptr)//参数为二级指针 { **ptr = 40; printf("%d\n", **ptr); } int main() { int a = 10; int p = &a; //int* ptr = &p;//也可以用这种方式定义 int** ptr = &p;//定义二级指针 point(ptr);//传递二级指针 system("pause"); }

最新回复(0)