C语言-初阶笔记

%.2f取小数点后两位 %2d补齐两位

C初阶1:数组

  1. 数组指针:指向数组的指针
    数组的返回值如果是负数(如-1)是不合法的,可以用来做判断
  2. 二维数组作为参数,列数需要确定,C语言在二维数组传参的缺陷
    因此,二维数组->一维数组:元素下标=现行序号*列元素个数+现列序号

C初阶2:字符串

  1. 字符串可以整体输入scanf()输出printf()(不需像数组一样遍历)的原因字符串结尾有\0,用%s作为标识符,如果识别到\0就停止
char str[8];
scanf("%7s",str);//%和s之间的数字表示最多允许输入的字符数,为数组长度-1
printf("%s\n",str);

%和s之间的数字表示最多允许输入的字符数,为数组长度-1

  1. 如果字符串指针指向字面量不可以被修改,如:char* ptr ="Hello World";
  • *ptr ='h';//错误!!!字符串字面量放在一个不能被修改的地方,用字符串指针修改会出错
  • 最好加上const,即:const char* ptr="Hello World";这样如修改可以编译是报错
  • 指向字符串数组,可以被修改,如:
 char arr[]="Hello World";
 char* ptr = arr;
*(ptr+6)='w';//可以修改
  1. char arr[]="hello world"
    strlen(arr)=11//空格算,\0不算
  2. const指定某些变量不可以被修改,主要用在函数参数

char可传到const char 可变的可传到不可变的,const char不能传到char
不可变的不能传到可变的,因为这样传多半是想变(不可以呦!)

上一篇:C++后端面试必会知识点


下一篇:C++学习笔记——(十)智能指针,类型转换