1.字符串简介

1.1 char类型数组和null字符

C没有专门储存字符串的变量类型,字符串都被存在char类型的数组中,数组由连续的存储单元组成,末尾\0是空字符结尾,数组是同类型元素的有序序列

声明:char 数组名[] 方括号代表这是一个数组,里面可以填数字表明该数组中的元素数量

printf()中**%s**告诉pinrtf打印一个字符串

1.2 strlen()函数

string.h头文件包含了strlen()函数,strlen()函数用于给出字符串中的字符长度,不包括结尾的空字符

函数返回的类型是 size_t,这是一个无符号的整型,适用于表示大小。

  • sizeof 是一个非常有用的操作符,用于计算类型或变量在内存中占用的字节数。sizeof 可以用来计算一个数据类型的大小,也可以计算一个变量的大小,用法:sizeof(变量名或类型)

C99标准为sizeof何strlen()添加了%zd转换说明

2.常量和C预处理器

2.1 预处理器定义常量

方法:#define 常量名 常量值

用大写符号表示常量是惯例,常量可以是数值、字符和字符串

2.2 const限定符

const关键字用于限定一个变量为只读

const 类型 变量名 = 值;

2.3 明示常量

limits.h和float.h提供了整数类型和浮点数类型大小限制相关的详细信息,每个头文件都定义了一系列供实现使用的明示常量

image-20240921131731022

3.printf()和scanf()

3.1 printf()

printf()打印数据的指令要与待打印数据的类型相匹配

printf("格式字符串", 参数1, 参数2, ...);

  • 格式说明符表:
image-20240921150402260
  • 在%和转换字符之间插入修饰符可修饰基本的转换说明。转换修饰符:
image-20240921152831819
  • printf()中的标记
image-20240921153231735
  • 长字符串书写技巧:一个长字符串分成多行来书写,以便提高代码的可读性

    1
    2
    3
    printf("This is a very long string that "
    "spans multiple lines for better "
    "readability and maintainability.\n");

3.2 scanf()

scanf()是通用的输入函数,可以读取不同格式的数据

  • 使用scanf()读取基本变量类型的值,要在变量名面前加一个&
  • 把字符串读入字符数组中,不加&
  • scanf()使用空白把输入分成多个字段,输入只要在每个输入项之间输入至少一个换行符、空格或制表符即可