(const int) {100}
(int[3]) {10, 20, 30}
//匿名变量
//匿名数组
#include <stdio.h>
#include <stdlib.h>
int main() {
int* a0 = (int[]) {0, 1, 2, 3};//创建匿名数组,并有a0指向首元素地址
// int A0[] = {0, 1, 2, 3};
// int* a0 = A0;
int* a1 = (int[]) {4, 5};
int* a2 = (int[]) {6, 7, 8};
int *arr0[] =
{
a0,
a1,
a2
};
int row = 0;
for(int i=0; i<4; i++) {
printf("layer1[%d][%d] Address: %p Value: %d\n",
row, i, &arr0[row][i], arr0[row][i]);
}
printf("\n");
row = 1;
for(int i=0; i<2; i++) {
printf("layer1[%d][%d] Address: %p Value: %d\n",
row, i, &arr0[row][i], arr0[row][i]);
}
printf("\n");
row = 2;
for(int i=0; i<3; i++) {
printf("layer1[%d][%d] Address: %p Value: %d\n",
row, i, &arr0[row][i], arr0[row][i]);
}
printf("\n");
return 0;
}
#include <stdio.h>
#include <stdlib.h>
int main() {
int* arr1[] =
{
(int[]) {0, 1, 2, 3},//匿名数组
(int[]) {4, 5},
(int[]) {6, 7, 8}
};
int row = 0;
for(int i=0; i<4; i++) {
printf("layer1[%d][%d] Address: %p Value: %d\n",
row, i, &arr1[row][i], arr1[row][i]);
}
printf("\n");
row = 1;
for(int i=0; i<2; i++) {
printf("layer1[%d][%d] Address: %p Value: %d\n",
row, i, &arr1[row][i], arr1[row][i]);
}
printf("\n");
row = 2;
for(int i=0; i<3; i++) {
printf("layer1[%d][%d] Address: %p Value: %d\n",
row, i, &arr1[row][i], arr1[row][i]);
}
printf("\n");
return 0;
}