在不定义变量的情况下将数组作为函数参数传递
Passing an array as function argument without defining a variable
我们如何将数组直接传递给 C 中的函数?
例如:
#include <stdio.h>
void function(int arr[]) {};
int main(void) {
int nums[] = {3, -11, 0, 122};
function(nums);
return 0;
}
除了这个,我们能不能写成类似function({3, -11, 0, 122});
的东西?
您可以将数组作为复合文字传递,如下所示。
function((int []){3, -11, 0, 122});
您可以使用 compound literal。像
function((int []){3, -11, 0, 122});
我们如何将数组直接传递给 C 中的函数?
例如:
#include <stdio.h>
void function(int arr[]) {};
int main(void) {
int nums[] = {3, -11, 0, 122};
function(nums);
return 0;
}
除了这个,我们能不能写成类似function({3, -11, 0, 122});
的东西?
您可以将数组作为复合文字传递,如下所示。
function((int []){3, -11, 0, 122});
您可以使用 compound literal。像
function((int []){3, -11, 0, 122});