数组参数

mac2025-10-18  7

数组传给函数时,在C中不存在传数组!

#include <stdio.h> #include <stdlib.h> #include <string.h> void test01(int *arr, int n)//常用方式 { printf("test01成功调用!\n"); } void test02(int arr[]) { printf("test02成功调用!\n"); } void test03(int arr[10]) { printf("test03成功调用!\n"); } void test04(int *arr[])//不可以,类型不同,应该是编译不通过的 { printf("test04成功调用!\n"); } void test05(int **arr)//不可以,类型不同,应该是编译不通过的 { printf("test05成功调用!\n"); } void testdouble01(int arr[][5])//常用方式 { printf("testdouble01成功调用!\n"); } void testdouble02(int arr[3][5]) { printf("testdouble02成功调用!\n"); } //void testdouble03(int arr[][])//编译不通过 //{ // printf("testdouble03成功调用!\n"); //} //void testdouble04(int *arr)//不可以,类型不同,应该是编译不通过的 //{ // printf("testdouble04成功调用!\n"); //} //void testdouble05(int *arr[5])//不可以,类型不同,应该是编译不通过的 //{ // printf("testdouble05成功调用!\n"); //} void testdouble06(int (*arr)[5])// { printf("testdouble06成功调用!\n"); } //void testdouble07(int **arr)//不可以,类型不同,应该是编译不通过的 //{ // printf("test05成功调用!\n"); //} int main() { int arr[10] = { 0 }; int doublearr[3][5] = { 0 }; test01(arr, 10); test02(arr); test03(arr); test04(arr); test05(arr); testdouble01(doublearr); testdouble02(doublearr); /*testdouble03(doublearr); testdouble04(doublearr); testdouble05(doublearr);*/ testdouble06(doublearr); //testdouble07(doublearr); system("pause"); return 0; }
最新回复(0)