对一些数据类型的概念说明

char数据类型

     设计char数据类型的目的是为了容纳字符型值,字符的本质是小整型值。char的最小范围是0~127,对于char、int等基本数据类型的具体长度可查看头文件limits.h。对于缺省的char值,要么是signed char:-127~127,要么是unsigned char:0~255,这取决于编译器。当程序所使用的char型变量的值位于signed char和unsigned char的交集时,程序具有可移植性。ASCII字符集中的字符都是位于这个范围的。

字面值(literal)

     字面值是字面值常量的缩写,这是一种实体,指定了自身的值并且不允许发生改变。在ANSI C中允许命名常量,声明为const变量,与普通变量很类似,只是在创建const变量时,就要初始化该变量,并且之后就不允许再发生改变。

	const int Data = 1;	//声明常量
	int const Data = 1;	//声明常量
	//这两种的声明是等效的,选取适合自己的一种即可

const常量在创建时获取值的方法:

    1)定义时初始化。

    2)在函数中声明const形参,当函数被调用时会得到实参的值。

	int Fun1( char const *pstr )	//方式2
	{
		int Len = strlen(pstr);

		return Len;
	}

	void Fun2(void)
	{
		int const Data = 1;	//方式1
		int len = Fun1("string");
	}

字符串

    字符串的概念:是一串以NUL字节结尾的零个或多个字符。即使是空字符串依然存在作为终止符的NUL字节,在c语言中并没有字符串类型,不过c语言提供字符串常量,同时字符串以字符数组的形式存在。

      字符串常量中的字符和NUL终止字节都存储在内存的某个位置,在ANSI C中不允许修改字符串常量。若要修改字符串,则应该将它存储于字符数组中。

      当一个字符串常量出现在一个表达式中时,表达式所使用的值就是这些字符串存储的地址,而不是这些字符本身。因此,可以把字符串常量赋值给“指向字符的指针”。

	char str[] = "string";
	//字符数组的形式存储字符串,str是“string”字符串的一个拷贝
	
	char *pstr = "string";
	//字符串常量存储的位置
	str[1] = 'T';	//ok,字符数组可以修改
	*(pstr+1) = 'T';	//error,字符串常量不可修改


转载于:https://www.cnblogs.com/jinxiang1224/p/8468438.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值