31深入理解C指针之---指针和字符串

  一、字符串与指针

    1、定义:使用字符指针表示字符串

    2、特征:

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

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

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

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

      5)、必须先申请内存空间

    3、应用:

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

    1)、可以直接将字符串字面量赋值给字符指针,完成字符串的初始化;

    2)、可以直接将字符数组赋值给字符指针,完成字符串的初始化;

    3)、可以先申请内存,之后像字符数组那样一一赋值,最后务必加上结束字符'\0';

    4)、可以先申请内存,之后使用字符操作函数strcpy将字符串字面量复制到到字符指针,完成赋值操作;

posted @   叕叒双又  阅读(368)  评论(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工具
点击右上角即可分享
微信分享提示