字串

字串在C语言里面并没有专门的变数来放,而是利用阵列。还记得上次讲的变数型态char吗?一个char变数可以放一个字元,所以要放一个内含十个字元的字串,就要用char string[11];
其中大小只要在11以上即可(名字当然也随便罗^^)。但,为什麼10字要用11个变数来存呢?这是由于C语言的字串是由’ ’来结尾,这是一个看不见的符号,ASCII码是0,当我们用函数印出字串时,电脑一读到’ ’就会知道字串结束了,这也是为什麼可以用大於字串长度的阵列来放字串。
字串的处理上和一般变数有所不同,如下:(假设已宣告了一个变数char string[11];)
指定给变数: strcpy(string,”Hello!World!!”); /*不可以直接用=来设定*/
把二字串相连: strcat(string,”Beep!!”);
印出字串: printf(“%s”,string); /* %c是只印一个字,%s是印字串 */
以上三个函式前二个在string.h中,要记得引入。当你用前二个函式控制字串时它会自动在结尾加上’ ’,不用自己来。在记忆体中是这个样子的:
char string[11];
strcpy(string,”Hello!!”);