HIT《C语言程序设计精髓》:字符串常量和变量,字符数组和字符指针

1、字符常量
	用双引号括起来的一串字符是字符串常量,系统自动为其添加空字符'\0'(ASCII码为0,'0'的ASCII码为'48')
	e.g.
		printf("How are you");
		
2、字符串变量
	1、字符数组
		char str[]="china";
		这里str和字符串内容一起被保存在栈内存或静态内存中,所以字符串的内容时可以修改的,但是str是个变量名,它的不可以被修改。
		str = "hello";//err
		str[0]='w';//right
	2、字符指针
		char *pstr = "china";
		pstr是一个指向常量存储区(数据段,不能被修改)中的字符串的指针变量。(这里没有预先给字符串分配内存,所以系统自动将字符串分配到数据段)
		可以修改pstr的值(指向),因为pstr在栈内存中,但是不可以对它所指向的存储单元进行写操作
		*pstr='w';//err
		
既可以修改变量,又可以修改字符串的办法
	先用字符数组初始化字符串,再用指针指向字符数组
	char str[]="hello";
	char *pstr=str;
	*pstr='w';//right

在这里插入图片描述
在这里插入图片描述

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值