主业iOS/PHP,副业啥都玩,QQ:705719110,欢迎来撩!

C语言学习笔记————–数组、字符串

C语言基础 随风 128℃ 0评论

一、数组

        数组是用来存储一组数据的构造数据类型。

1.一维数组:

        定义形式为 : 类型 数组名[元素个数]
        比如 int a[3] = {11,12,13};

        [] 只能写在变量名的后面, [] 里面的个数必须是一个固定的值,可以是常量、常量表达式(1 + 2)

        比如 char b[5];
         int b[‘A’];
         int c[1 + 2];

        数组初始化
        int a[4] = {2,5};

        int a[4]; a[0] = 1; a[1] = 2;

        int a[] = {1,2};

        一维数组a的地址其实等于数组起始位置的地址 a[0] 的地址

2.二维数组:

        二维数组其实就是多个一维数组组合起来的数组

        定义形式为:int a[2][2] = {{1,2},{3,4}};
        也可以按照存储的顺序初始化 比如 int a[2][2] = {1,2,3,4};
        对部分元素初始化 int a[2][2] = {{2},{1,2}}; int b[2][2] = {{},{,1}};
        可以省略行数,但是不能省略列数 int a[][2] = {1,2,3,4,5,6}; int a[][3] = {{1,2,3},{0,3},{}};

        二维数组的地址与一维数组的类似。

        三维乃至更多维的数组类似,可以以此类推。

二、字符串

        在C中存在char这种字符类型,但是它的存储大小有限,只能存储一个字符,比如

        char chr = ‘a’;

        chr = ‘ab’;

        chr中存储的结果变为了 b

        由于c语言中没有字符串类型,所以就引入了字符串,其实就是做了一个char类型的数组来处理字符串

        字符串的初始化:char a[3] = {‘d’,’c’,’\0′};

        字符串一定是 ‘\0’结尾的,如果不以 ‘\0’结尾,那就有可能造成内存越界的操作。

1.字符串的输出

        在输出的时候使用 %s 的占位符

        printf(“字符串为%s”,a);

        也可以使用 puts函数输出,但是一次只能输出一个字符串,而且会默认在字符串结尾添加一个 ‘\0’

        puts(a);

        puts(“dc”);

2.字符串输入

        字符串输入的函数有:scanf(); gets(); 它们都会在输入结束之后会自动添加一个 ‘\0’

        char a[10];

        scanf(“%s”,a);

        或者
         gets(a); 但是gets()一次只能读取一个字符串,可以读取空格、tab的字符串,直到遇到回车

        

3.字符处理函数

        字符输出函数putchar

        putchar(65); // A

        putchar(‘A’); // A

        int a = 65;
        putchar(a); // A

        输出结果都为A,但是一次只能输出一个字符,printf可以输出多个

        字符输入函数getchar

        char c;
        c = getchar();

        一次只能读入一个字符,scanf可以输入多个字符,getchar()可以读入空格、tab回车换行符

4.字符串处理函数

        strlen函数 从首地址开始测量字符个数,不包括 ‘\0’

         char s1[] = “dc”;
         int size = strlen(s1); // 长度为2

        strcpy函数 复制字符串,只拷贝到‘\0’之前

         char s[10];
         strcpy(s, “dc”);

        strcat函数 字符串的拼接,从第一个‘\0’后面开始拼接,会覆盖后面的数据

        char s1[30] = “LOVE”;
        strcat(s1, “DC”);

        strcmp函数 比较两个字符串的大小,两个字符串按照ASCII码值逐个比较,知道遇见‘\0’为止

转载请注明:怼码人生 » C语言学习笔记————–数组、字符串

喜欢 (0)
发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址