牛逼的程序员简述在C语言中,“字符”与“字符串”之间的区别

牛逼的程序员简述在C语言中,“字符”与“字符串”之间的区别

在C语言中,“字符”与“字符串”之间,是有区别的。这一篇文章中,我们将介绍一下,在C语言中的“字符”与“字符串”,它们之间的区别。

首先,一个很明显的区别是:

“字符”,使用单引号作为定界符,而“字符串”,是使用双引号作为定界符。

我们可以先写一个定义“字符”的程序代码段:

牛逼的程序员简述在C语言中,“字符”与“字符串”之间的区别


上述C语言程序中,第5行,就是定义了一个“字符”变量str,定义“字符”变量的时候,使用关键字“char”,从本质上来说,关键字“char”定义的也是一个整数,这个整数在内存中占据一个字节。与ASCII码表相对应。比如常用的ASCII码表的对应关系是:数字48表示字符'0';数字65表示字符'A';数字97表示字符'a'

在定义一个“字符”的时候,定界符要写成单引号。在屏幕上打印一个字符的时候,需要在printf函数中,使用“%c”这个占位符。

我们再来看一下,定义一个字符串的代码片段:


牛逼的程序员简述在C语言中,“字符”与“字符串”之间的区别


上述C语言程序中,第5行,是定义了一个“字符串”。使用的是char类型的数组格式。另外,在字符串常量两边的定界符中,使用的是双引号。

在屏幕上要打印一个字符串的时候,在printf函数中,使用的是“%s”这个占位符。与“字符”的“%c”这个占位符是不同的。

“字符”与“字符串”之间,除了定界符不同之外,还有一个区别是:

“字符”占据一个字节,但是“字符串”是占据多个字节。而且,在“字符串”的结尾处,自动被编译器加上了'\0'这个字符,在ASCII码中,'\0'表示的是一个空字符。

如果在定义一个字符串常量的时候,使用了单引号,程序就会报错。在定义字符串的时候,需要在变量名后面加上“中括号”,类似于定义“数组”时候的格式。

如果大家对于学习C++有任何问题,可以随时来咨询我,关注我的头条号,私信我“资料”会自动回复C++的学习资料以及学习方法和如何找工作的下载地址,还有我的C++2000人交流学习群,希望大家可以少走弯路。


分享到:


相關文章: