C语言 | 指针引用字符串

举报
C语言入门到精通 发表于 2021/04/24 01:37:47 2021/04/24
【摘要】 C语言字符串的引用方式在C语言程序中,字符串是存放在字符数组中的。用字符数组存放一个字符串,可以通过数组名和下标引用字符串中的一个字符,也可以通过数组名和格式声明%s输出该字符串。用字符指针变量指向一个字符串常量,通过字符指针变量引用字符串常量。通过字符数组名或字符指针变量可以输出一个字符串,而对一个数值型数组,是不能企图用数组名输出它的全部元素的。C语言字符指针作函数参数如果...

C语言字符串的引用方式

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

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

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

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

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

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

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

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

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

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

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

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

#include <stdio.h>
#include <string.h>//为了引入求字符串长度函数 
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 after 3.3 seconds with return value 0
请按任意键继续. . .C++

以上,如果你看了觉得对你有所帮助,就给

点个赞, 分享给身边的人叭,这样小林也有更新下去的动力,跪谢各位父老乡亲啦~

C语言开发工具详解 mp.weixin.qq.com图标

文章来源: zhuanlan.zhihu.com,作者:小林C语言,版权归原作者所有,如需转载,请联系作者。

原文链接:zhuanlan.zhihu.com/p/367105995

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。