//GCC 编译方式: C:\MinGW\project>gcc -std=c99 main.c //编码环境 GBK #include <stdio.h> int main(){ int array[3][4]={{0,1,2,3},{4,5,6,7},{8,9,10,11}}; //遍历二维数组,并打印 for(int i=0;i< 3;i++){ for(int j=0;j<4;j++){ printf("array[%d][%d]=%d\n",i,j,array[i][j]); } } /* 输出 : array[0][0]=0 array[0][1]=1 array[0][2]=2 array[0][3]=3 array[1][0]=4 array[1][1]=5 array[1][2]=6 array[1][3]=7 array[2][0]=8 array[2][1]=9 array[2][2]=10 array[2][3]=11 */ //字符串的初始化 //char str[100] ; //定义一个字符串 //char str[100] = {‘h‘,‘e‘,‘l‘,‘l‘,‘o‘}; //定义一个字符串,并初始化 char str[100] = "hello"; //多种初始化 str[0] = ‘H‘; str[1] = ‘e‘; str[2] = ‘\0‘; //遇到\0,字符串就结束了 str[3] = ‘l‘; str[4] = ‘o‘; printf("%s\n",str); //字符串就是以\0结尾的数组 //输出 He printf("str =%d\n",sizeof(str)); //输出 str =100 //打印字符数组大小 char str1[] = "Hello"; printf("str1 =%d\n",sizeof(str1)); // 输出 str1 =6 //固定字符数组大小,研究字符串初始化后是什么东西 char str2[10] = "Hello"; printf("str2 =%d\n",sizeof(str2)); //输出 str2 =10 printf("str2[4] char=>%c HEX=>%x\n",str[4],str[4]); printf("str2[5] char=>%c HEX=>%x\n",str[5],str[5]); printf("str2[6] char=>%c HEX=>%x\n",str[6],str[6]); printf("str2[7] char=>%c HEX=>%x\n",str[7],str[7]); //输出: // str2[4] char=>o HEX=>6f // str2[5] char=> HEX=>0 // str2[6] char=> HEX=>0 // str2[7] char=> HEX=>0 //修改字符串内容 char str3[99]="Hello World!"; printf("%s",str3); printf(str3); str3[4]=‘A‘; printf(str3); //输出 Hello World!Hello World!HellA World! printf("\n数组逆置:\n"); int low=0; int high=11; //注意上面的那个字符,11位之后就是\0了 int tmp_var; while(low<high){ tmp_var =str3[low]; str3[low] =str3[high]; str3[high] =tmp_var; low++; high--; } printf(str3); //输出: //数组逆置: //!dlroW AlleH char str4[100] ="你好世界"; printf("\n%s\n",str4); for(int i=0;i<13;i++){ printf("%x\n",str4[i]); } /* GBK编码环境: 你好世界 ffffffc4 ffffffe3 ffffffba ffffffc3 ffffffca ffffffc0 ffffffbd ffffffe7 0 0 0 0 0 你C4E3 好BAC3 20 世CAC0 界BDE7 */ //用GBK编码显示 汉字 char str5[100]; str5[0]=0xc4; str5[1]=0xe3; str5[2]=0; printf(str5); //输出 你 }
时间: 2024-10-11 06:19:41