30深入理解C指针之---字符串和数组

  一、字符串与数组

    1、定义:使用字符数组表示字符串

    2、特征:

      1)、可以直接使用字符串字面量初始化字符数组

      2)、声明后,赋值就只能使用字符串操作函数strcpy函数赋值

      3)、可以使用数组的一一赋值

      4)、可以使用数组的整体赋值

      5)、无需而外申请内存空间

    3、应用:

复制代码
 1 #include <stdio.h>
 2 #include <string.h>
 3
 4 int main(int argc, char **argv)
 5 {
 6     char arrCh1[] = "Sound";
 7     char arrCh2[6] = {'S', 'o', 'u', 'n', 'd',};
 8     char arrCh3[6];
 9     arrCh3[0] = 'S';
10     arrCh3[1] = 'o';
11     arrCh3[2] = 'u';
12     arrCh3[3] = 'n';
13     arrCh3[4] = 'd';
14     arrCh3[5] = '\0';
15     char arrCh4[6];
16     strcpy(arrCh4, "Sound");
17
18     printf("arrCh1: %s\n", arrCh1);
19     printf("arrCh2: %s\n", arrCh2);
20     printf("arrCh3: %s\n", arrCh3);
21     printf("arrCh4: %s\n", arrCh4);
22
23     return 0;
24 }
复制代码

    1)、无需字符数组的最后一个是'\0',单个一一赋值时,需要特别留意,最后要加上第14行的代码,

    2)、为字符数组申请内存空间时,一定要比需要的多一个字节,存放'\0'结束符

    3)、为字符数组整体赋值时,不需要将最后一个赋值为'\0',但是数组空间必须比需要的多一个字节

    4)、直接使用字符串字面量为字符数组赋值,就无需指定大小

posted @   叕叒双又  阅读(351)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
点击右上角即可分享
微信分享提示