字符串和格式化输入输出

1、字符串简介

        字符串是一个或多个字符的序列,如"hello  world",双引号不是字符串的一部分,双引号仅告知编译器它括起来的是字符串,就好比单引号用于标识单个字符一样。

        C语言中没有专门用来存储字符串的变量类型,通常都用字符数组来存储,每个字符都被存在字符数组的存储单元中,并以'\0'结尾,C语言中用它标志着字符串的结束。

2、字符串格式化输入输出符号

        字符串格式化输入输出符号为%s。

        输入scanf("%s",string)。 string为字符数组名。

        输出printf("%s\n",string)。string为字符数组名。

        其中,用scanf输入字符串的时候,不用手动添加'\0',scanf会自动添加。

3、字符串"a"和字符'a'的区别

        ①字符'a'是基本类型,字符串"a"是派生类型。

        ②字符'a'是一个字符组成,而字符串"a"是两个字符组成(后面有'\0')。

4、sizeof和strlen的区别:

        sizeof 是操作符,返回值是给出对象大小的字节数。

        strlen是函数,返回值是给出字符串中的字符个数。

        示例 :

        char name[40] = "hello world";

        int main ()

        {
            printf("sizeof(name) = %d\n",sizeof name);
            printf("strlen(name) = %d\n",strlen(name));
            return 0;
        }

        输出结果:

        sizeof(name) = 40

        strlen(name) = 11

5、常量和预处理器

        预处理指令定义常量:

                #define  NAME  value   在编译时,程序中所有用到NAME的地方都会被替换为value。

        const关键字定义常量:

                const int value;  注意:const定义的变量为只读变量,并非真正的常量。并且,在用const定义局部变量时,局部变量的值可以通过指针改变,定义全局变量时则不会。

6、使用printf输出时的转换说明及其修饰符字符串和格式化输入输出_第1张图片

 字符串和格式化输入输出_第2张图片

 字符串和格式化输入输出_第3张图片

 字符串和格式化输入输出_第4张图片

 7、使用printf打印多个数据时的参数传递方式

字符串和格式化输入输出_第5张图片

字符串和格式化输入输出_第6张图片 

 

 8、打印较长字符串的三种方式

        字符串和格式化输入输出_第7张图片

 

你可能感兴趣的:(c语言)