在经过前面系统进制和C语言整体架构输入以及对各种类型输出的学习后,相信大家对C语言都有了一个比较基本的了解,那么今天课课家笔者就给大家介绍C语言中的字符(char),让大家深化对C语言的了解。
首先先给大家普及下何谓字符串,所谓字符串,简单来说它就是多个字符的集合,比如"abc123"、"123\\141\\142\\143";当然也可以只包含一个字符,比如"a"、"1"、"\\63"。不过通常我们为了使用方便,我们可以用char类型来专门表示一个字符,比如:
chara='1';
charb='$';
charc='X';
chard='';//空格也是一个字符
chare='\\63';//也可以使用转义字符的形式
char称为字符类型,只能用单引号''来包围,不能用双引号""包围。而字符串只能用双引号""包围,不能用单引号''包围。
输出字符使用%c,输出字符串使用%s。
◎字符与整数
让我们来看看下面一段代码:
#include
#include
int main()
{
chara='E';
charb=70;
intc=71;
intd='H';
printf("a=%c,a=%d\\n",a,a);
printf("b=%c,b=%d\\n",b,b);
printf("c=%c,c=%d\\n",c,c);
printf("d=%c,d=%d\\n",d,d);
system("pause");
return0;
}
输出结果:
a=E,a=69
b=F,b=70
c=G,c=71
d=H,d=72
在ASCII码表中,E、F、G、H的值分别是69、70、71、72。字符和整数没有本质的区别。可以给char变量一个字符,也可以给它一个整数;反过来,可以给int变量一个整数,也可以给它一个字符。char变量在内存中存储的是字符对应的ASCII码值。如果以%c输出,会根据ASCII码表转换成对应的字符;如果以%d输出,那么还是整数。int变量在内存中存储的是整数本身,当以%c输出时,也会根据ASCII码表转换成对应的字符。换句话说ASCII码表将整数和字符关联起来了。
◎字符串
由于C语言中没有字符串类型,只能使用间接的方法来表示。我们可以借助下面的形式将字符串赋值给变量:
char*variableName="string";
char和*是固定的形式,variableNmae为变量名称,"string"是要赋值的字符串。
字符串使用示例:
#include
#include
int main()
{
charc='@';
char*str="This is astring.";
printf("char:%c\\n",c);
printf("string1:%s\\n",str);
//也可以直接输出字符串
printf("string2:%s\\n","This is another string.");
system("pause");
return0;
}
运行结果:
char:@
string1:Thisisastring.
string2:This is another string.
本次C语言初探之字符(char)的教程到此暂告一段落,以后有补充的笔者会继续补充,希望这个教程对大家学习C语言起到一定的帮助。