0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

C语言字符串的引用方式

jf_78858299 来源:C语言 作者:闫小林 2023-03-10 14:57 次阅读

C语言字符串的引用方式

  1. 在C语言程序中,字符串是存放在字符数组中的。
  2. 用字符数组存放一个字符串,可以通过数组名和下标引用字符串中的一个字符,也可以通过数组名和格式声明%s输出该字符串。
  3. 用字符指针变量指向一个字符串常量,通过字符指针变量引用字符串常量。
  4. 通过字符数组名或字符指针变量可以输出一个字符串,而对一个数值型数组,是不能企图用数组名输出它的全部元素的。

C语言字符指针作函数参数

如果想把一个字符串从一个函数“传递”到另一函数,可以用地址传递的方法,即用字符数组名作参数,也可以用字符指针变量作参数。

在被调用的函数中可以改变字符串的内容,在主调函数中可以引用改变后的字符串。

C语言使用字符指针变量和字符数组的比较

字符数组由若干个元素组成,每个元素中放一个字符,而字符指针变量中存放的是地址(字符串第1个字符的地址),绝不是将字符串放到字符指针变量中。

赋值方式:可以对字符指针变量赋值,但是不能对数组名赋值。

初始化的含义:对字符指针变量赋初值。

存储单元的内容:编译时为字符数组分配若干个存储单元,以存放各元素的值,而对字符指针变量,只分配一个存储单元。

C语言使用字符指针变量和字符数组注意事项

  1. 指针变量的值是可以改变的,而数组名代表一个固定的值,即数组首元素地址,不能改变。
  2. 字符数组中各元素的值是可以改变的,但字符指针变量指向的字符串常量中的内容时不可以被取代的。
  3. 引用数组元素。对字符数组可以用下标法引用一个数组元素,也可以用地址法。
  4. 用指针变量指向一个格式字符串,可以用它代替printf函数中的格式字符串。

C语言通过指针引用数组案例

#include 
#include //为了引入求字符串长度函数
int main()
{
char str[] ="hello xiaolin";//将字符串放在字符数组中
char *pstr = str;
for(int i=0; i<strlen(str); i++)
{
printf("%c", *(pstr+i));
}
printf("\\n");
return 0;
}

编译运行结果:

hello xiaolin

--------------------------------
Process exited after3.3 secondswith return value0
请按任意键继续. . .
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • C语言
    +关注

    关注

    180

    文章

    7533

    浏览量

    128785
  • 字符
    +关注

    关注

    0

    文章

    229

    浏览量

    24888
  • 指针
    +关注

    关注

    1

    文章

    473

    浏览量

    70364
  • 数组
    +关注

    关注

    1

    文章

    409

    浏览量

    25595
收藏 人收藏

    评论

    相关推荐

    C语言字符串函数详解

    , int c);查找字符c字符串string中首次出现的位置, NULL结束符也包含在查找中.返回一个指针, 指向字符
    发表于 06-23 23:33

    socket发送字符串出错

    socket发送字符串时出现图中所示空格,请问怎样才能去除,字符串类型是通过C语言定义的无符号整形。
    发表于 05-15 12:04

    什么是指向字符串指针?

    方式在做字符串处理的时候,非常吃力,最好的方式就是可以将这些字符存储到一个集群式的变量里面,我们C语言
    发表于 03-15 14:19

    C语言是如何实现字符串大小与字符串比较的函数

    C语言实现字符串比较(非库函数)今天在keil上写代码时,使用strlen和strcmp一直会有警告,所以就有了下面的东西,自己写一个判断数组大小和字符数组比较的代码。仅供参考。kei
    发表于 07-14 06:40

    C语言关于中文字符串的使用误区在哪

    汉字的存储方式和特点以下是一段c语言代码,比较中文存储和英文字符存储可以清晰看到c语言中,中文占
    发表于 07-14 07:54

    C语言中文字符串的使用误区有哪些?

    c语言汉字的存储方式和特点是什么?C语言中文字符串的使用误区有哪些?
    发表于 10-15 06:24

    嵌入式C语言字符串字符指针的相关资料分享

    C语言字符串字符指针  今天在写嵌入式代码时,遇到了个易错的,关于嵌入式CCC语言字符串
    发表于 12-15 08:05

    聊聊字符串

    就是字符格式。有些场景需要使用多个处理器协同工作,比如单片机+openmv,它们之间需要通信,可以采用字符格式的编码方式。操作字符串,无非是两件事儿:生成
    发表于 02-28 06:52

    字符串逆序的方法分享

    分享一道经典的C语言题目。题目:字符串逆序。如:hello world转换为dlrow olleh。流程图:代码:左右滑动查看全部代码>>>/*-程序功能:字符串...
    发表于 02-28 07:17

    c语言如何对比字符串是否相同?

    c语言如何对比字符串是否相同把一个字符串变量直接赋值给另一个变量怎么实现
    发表于 11-02 07:45

    字符串常量的定义与引用

    字符串的定义与引用
    的头像 发表于 09-14 11:37 9146次阅读
    <b class='flag-5'>字符串</b>常量的定义与<b class='flag-5'>引用</b>

    C语言总结_字符串全方位练习

    C语言字符串全方位练习,涉及知识点:字符串解析、大小写判断、字符串插入、字符串删除、字符串排序、
    的头像 发表于 08-14 09:41 1166次阅读

    C语言-字符串处理

    字符串在C语言里使用非常多,因为很多数据处理都是文本,也就是字符串,特别是设备交互、web网页交互返回的几乎都是文本数据。 这篇文章就介绍字符串定义、和基本处理的方法。
    的头像 发表于 08-14 10:05 1454次阅读

    C语言字符数组和字符串有什么区别

    用来存放字符的数组称为字符数组。字符数组的各个元素依次存放字符串的各字符,字符数组的数组 名代表
    的头像 发表于 02-17 14:27 2620次阅读

    c语言字符串定义

    字符串的定义、初始化、操作和常见问题。 字符串的定义和初始化 在C语言中,字符串被定义为一个字符数组。可以通过两种
    的头像 发表于 11-24 10:02 859次阅读