11.1

11.1表示字符串和字符串I/O

字符串是以空字符(\0)结尾的char类型数组

和printf()函数一样,puts()函数也属于stdio.h系列的输入/输出函数。但是,与printf()不同的是,puts()函数只显示字符串,而且自动在显示的字符串末尾加上换行符

1.字符串字面量(字符串常量)

用双引号括起来的内容称为字符串字面量,也叫字符串常量

如果字符串字面量之间没有间隔,或者用空白字符分隔,C会将其视为串联起来的字符串字面量

char greeting[50] = "Hello, and"" how are" " you"

" today!";

与下面的代码等价:

char greeting[50] = "Hello, and how are you today!";

如果要在字符串内部使用双引号,必须在双引号前面加上一个反斜杠(\):

printf(""Run, Spot, run!" exclaimed Dick.\n");

输出如下:

"Run, Spot, run!" exclaimed Dick

字符串常量属于静态存储类别

这说明如果在函数中使用字符串常量,该字符串只会被储存一次,在整个程序的生命期内存在,即使函数被调用多次。用双引号括起来的内容被视为指向该字符串储存位置的指针

2.字符串数组和初始化

定义字符串数组时,必须让编译器知道需要多少空间

一种方法是用足够空间的数组储存字符串

3.数组和指针

初始化数组把静态存储区的字符串拷贝到数组中,而初始化指针只把字符串的地址拷贝给指针

4.数组和指针的区别

只有指针表示法可以进行递增操作

如果不修改字符串,不要用指针指向字符串字面量

5.字符串数组

如果要改变字符串或为字符串输入预留空间,不要使用指向字符串字面量的指针

posted on 2022-02-08 16:38  ashenxxxx  阅读(278)  评论(0)    收藏  举报