前言 : 之後可能會做程式相關筆記,然後分類紀錄方便找,想參考我的也是可以。
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include<string>
int main(){
char text[][4] =
{
{'a', 'b' , 'c', '0'},
{'d', 'e', 'f', '0'},
};
//第一個[]可以按{}裡元素個數彈性決定number
char a[][5] = {"Book", "Dog", "Fish"};
char b[][4]={"abc", "def"};
char text2[2][3][3] =
{
{{'a', 'b', 0}, { 0 } ,{'e', 'f', 0}},
{{'g', 0}, {'i','j', 0} ,{'k', 'l' ,0 }}
};
char textt[2][3][3] =
{
{"ab", "0" ,"ef"},
{"g", "ij" ,"kl"}
};
printf("textt : 第二個{} 第一個字元:*%c* *%d*\n", textt[0][1][1], textt[0][1][1]);
printf("textt : 第三個{} 第一個字元:*%c* *%d*\n", textt[0][2][0], textt[0][2][0]);
for(int i=0 ;i<2 ;i++)
{
for(int j=0; j<3;j++)
{
printf("textt : *%s*\n", text2[i][j]);
}
}
printf("-----------------------------------------------------\n");
printf("text2 : 第二個{} 第一個字元:*%c* *%d*\n", text2[0][1][1], text2[0][1][1]);
printf("text2 : 第三個{} 第一個字元:*%c* *%d*\n", text2[0][2][0], text2[0][2][0]);
for(int i=0 ;i<2 ;i++)
{
for(int j=0; j<3;j++)
{
printf("text2 : *%s*\n", text2[i][j]);
}
}
printf("-----------------------------------------------------\n");
printf("text2 第一個{} 字串長度 : %d\n" , strlen(text2[0][0]));
printf("text2 第二個{} 字串長度 : %d\n" , strlen(text2[0][1]));
printf("text2 第三個{} 字串長度 : %d\n" , strlen(text2[0][2]));
printf("text2 第四個{} 字串長度 : %d\n" , strlen(text2[1][0]));
printf("text2 第五個{} 字串長度 : %d\n" , strlen(text2[1][1]));
printf("text2 第六個{} 字串長度 : %d\n" , strlen(text2[1][2]));
printf("-----------------------------------------------------\n");
printf("text2 第一個{} 陣列長度 : %d\n" , sizeof (text2[0])/sizeof(text2[0][0]));
printf("text2 第二個{} 陣列長度 : %d\n" , sizeof (text2[0])/sizeof(text2[0][1]));
printf("text2 第三個{} 陣列長度 : %d\n" , sizeof (text2[0])/sizeof(text2[0][2]));
printf("text2 第四個{} 陣列長度 : %d\n" , sizeof (text2[0])/sizeof(text2[1][0]));
printf("text2 第五個{} 陣列長度 : %d\n" , sizeof (text2[0])/sizeof(text2[1][1]));
printf("text2 第六個{} 陣列長度 : %d\n" , sizeof (text2[0])/sizeof(text2[1][2]));
//printf("text6 陣列長度 : %d\n" , sizeof(text2)/sizeof(text2[0]));
printf("-----------------------------------------------------\n");
char text5[]={'1','2','3','4','5','6',0 ,'7'};
char text6[]={'1','2','3','4','5','6','7',0};
char String[] = "1234567";
const char *s2 = "1234567";
const int t=100;
printf("text6 : *%s*\n", text6);
printf("text6 字串長度 : %d\n" , strlen(text6));
printf("text6 陣列長度 : %d\n" , sizeof(text6)/sizeof(text6[0]));
printf("-----------------------------------------------------\n");
printf("text5 : *%s*\n", text5);
printf("第三項元素為 : %c\n" ,text5[3] );
printf("text5字串長度 : %d\n" ,strlen(text5));
printf("text5陣列長度 : %d\n" ,sizeof(text5)/sizeof(text5[0]));
printf("-----------------------------------------------------\n");
text5[4]='6';
printf("變更後text5 : *%s*\n", text5);
printf("變更後text5字串長度 : %d\n" ,strlen(text5));
printf("變更後text5陣列長度 : %d\n" ,sizeof(text5)/sizeof(text5[0]));
printf("-----------------------------------------------------\n");
printf("s2 : *%s*\n", s2);
printf("s2字串長度 : %d\n" ,strlen(s2));
printf("s2陣列長度 : %d\n" ,sizeof(s2)/sizeof(s2[0]));
printf("-----------------------------------------------------\n");
//s2[0] ='3';
//s2[3] ='7'; 是唯讀記憶體裡的,不能寫
printf("變更後s2 : *%s*\n", s2);
printf("第三項元素為 : %c\n", s2[3] );
printf("變更後s2字串長度 : %d\n" ,strlen(s2));
printf("變更後s2陣列長度 : %d\n" ,sizeof(s2)/sizeof(s2[0]));
printf("-----------------------------------------------------\n");
printf("String : *%s*\n", String);
printf("String字串長度 : %d\n" , strlen(String));
printf("String陣列長度 : %d\n" ,sizeof(String)/sizeof(String[0]));
printf("-----------------------------------------------------\n");
String[0] = '2';
String[3] = '6';
printf("變更後String : *%s*\n", String);
printf("變更後String字串長度 : %d\n" , strlen(String));
printf("變更後String陣列長度 : %d\n" ,sizeof(String)/sizeof(String[0]));
system("pause");
return 0;
}