指针数组--------概念、实用、例子(学得东西忘光了 是时候写写了!)

   定义形式:int *p[5]; 有p[0]....p[4] 5个元素,都指向整型变量的指针。-----通常用于处理字符串和二维数组。

#include <stdio.h>
void main()
{
        char ch[3][4]={"hjy","hdj","jfk"};
        char *pc[3]={ch[0], ch[1], ch[2]};
        int b[3][2]={{3,2},{4,3},{2,4}};
        int *p[3]={b[0], b[1], b[2]}, i, j;
        printf("1.直接输出数组元素(字符)ch[i][j]:\n");
        for (i=0; i<3; i++) {
            for (j=0; j<4; j++) {
                printf("ch[%d][%d]=%c\t", i, j, ch[i][j]);      //printf("ch[%d][%d]=%s\t", i, j, ch[i][j]);
            }
            printf("\n");
        }
        printf("\n2.用指针数组输出第2行的字符串: \n");
        printf("ch[1]=%s\n", pc[1]);
              
        printf("\n3.用指针数组输出字符串:\n");
        for (i=0; i<3; i++) {
            for (j=0; j<4; j++) {
                printf("ch[%d][%d]=%c\t", i, j, pc[i][j]);
            }
            printf("\n");
        }
        printf("\n4.用指针输出第2行的数组元素(整型数): \n");
        for (j=0; j<2; j++) {
            printf("b[1][%d]=%d\t", j, b[1][j]);
        }
        printf("\n\n5.用指针数组输出数组元素(整型数):\n");
        for (i=0; i<3; i++) {
            for (j=0; j<2; j++) {
                printf("b[%d][%d]=%d\t", i, j, p[i][j]);
            }
            printf("\n");
        }
}

wKioL1NSfMvwqh98AAIHy69ePXA776.jpg


你可能感兴趣的:(二维数组,字符串,数组指针)