|  | 
 
 发表于 2018-8-17 20:29:41
|
显示全部楼层 
| 
 复制代码#include <stdio.h>
#include <stdlib.h>
int (*Create(int flag, int index))
{
        static int data1[5] = {1, 2, 3, 4, 5};
        static int data2[8] = {100, 200, 300, 400, 500, 600, 700, 800};
        static int data3[10] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};
        if(flag)
        {
                switch(index)
                {
                case 1:
                        return data1;
                case 2:
                        return data2;
                case 3:
                        return data3;
                }
        }
        return NULL;
}
int main(void)
{
        int *p1 = Create(1, 1);
        int *p2 = Create(1, 2);
        int *p3 = Create(1, 3);
        
        for(int i = 0; i < 5; ++i)
        {
                printf("%d ", p1[i]);
        }
        printf("\n");
        for(int i = 0; i < 8; ++i)
        {
                printf("%d ", p2[i]);
        }
        printf("\n");
        for(int i = 0; i < 10; ++i)
        {
                printf("%d ", p3[i]);
        }
        printf("\n");
        return 0;
}
 | 
 评分
查看全部评分
 |