%.2f
取小数点后两位 %2d
补齐两位
C初阶1:数组
-
数组指针:指向数组的指针
数组的返回值如果是负数(如-1)是不合法的,可以用来做判断 -
二维数组作为参数,列数需要确定,C语言在二维数组传参的缺陷
因此,二维数组->一维数组:元素下标=现行序号*列元素个数+现列序号
C初阶2:字符串
-
字符串可以整体输入
scanf()
输出printf()
(不需像数组一样遍历)的原因:字符串结尾有\0
,用%s
作为标识符,如果识别到\0就停止
char str[8];
scanf("%7s",str);//%和s之间的数字表示最多允许输入的字符数,为数组长度-1
printf("%s\n",str);
%和s之间的数字表示最多允许输入的字符数,为
数组长度-1
- 如果字符串指针指向字面量,不可以被修改,如:
char* ptr ="Hello World";
- *
ptr ='h';
//错误!!!字符串字面量放在一个不能被修改的地方,用字符串指针修改会出错 - 最好加上
const
,即:const char* ptr="Hello World";
这样如修改可以编译是报错 - 指向字符串数组,可以被修改,如:
char arr[]="Hello World";
char* ptr = arr;
*(ptr+6)='w';//可以修改
-
char arr[]="hello world"
strlen(arr)=11
//空格算,\0不算 -
const
指定某些变量不可以被修改,主要用在函数参数里
char
可传到const char
可变的可传到不可变的,const char
不能传到char
不可变的不能传到可变的,因为这样传多半是想变(不可以呦!)