二維陣列、二維指標陣列儲存字串差異與練習

#include<stdio.h>
#include<string.h>
int main(){
//宣告二維字元陣列,大小位置固定,但可逐個替換字獲選擇其需替換的字元
        char str[3][4]={"how","are","you"};
        printf("%s ",str[0]);
        printf("%s ",str[1]);
        printf("%s\n",str[2]);
        str[0][0]='W';
        for(int i=0;i<3;++i){
                printf("%s ",str[0+i]);
        }
        printf("\n");
//基本指令練習for、while、do while
        for(int i=0;i<3;++i){
                printf("-");
        }
        int j=0;
        while(j<3){
                printf(" line ");
                ++j;
        }
        j=0;
        do{
                printf("-");
                ++j;
        }while(j<3);
        printf("\n另一個開始\n");

//字元指標陣列只可以整段一起替換,一但給予目標,不限陣列大小
        char *b[3]={"eat","hot","dog"};
        printf("%c%c%c\n",b[0][0],b[0][1],b[0][2]);
        printf("%s %s\n",b[1],b[2]);
        b[0]="EATTT";
//給予b[0]為替換目標,字元長短空間會自動配置
        for(int i=0;i<3;++i){
                printf("%s ",b[0+i]);
        }
//因為這裡的字元指標陣列數const格式,不可以單獨些改字元,但可以整句直接換
//而且沒有大小限制(直到沒有空間提供)

        return 0;
}

留言