这几天比较忙,断更了几天,希望大家不要介意哈!
字符数组
上次讲到了数组,大家应该都会了吧!
今天讲一下数组里比较特殊的字符数组。
C语言中没有字符串类型,所以C语言的字符串都是用字符数组表示的。
定义如下:
char a[6];
赋值如下:
a={'c','h','i','n','a','\0'};
C语言中用空字符'\0'代表字符串的结束,所以定义字符数组时一定要算好大小哦!
或者这样赋值:
a="china";
这样不用写后面那个'\0',编译器会自己加上,还有注意这里是双引号;
读入一个字符串:
char str[100];
scanf("%s",str);
发现什么不同了吗?
注意scanf里的str,前面是不是没用&;
这里可不是我忘写了,而是这里真的不用&;
具体原因等学到指针时就知道了,这里不过多介绍,因为指针是C语言中最难的部分;
附一个实例:
100是我随便填的,因为填大点不容易越界;
最后,提醒一下大家,数组间复制不要像下面这样哦
int a[5]=;
int b[5];
b=a;
因为这样你改a时b会跟着变,改b同理。
那如何解决呢?像下面这样
int i;
for (i=0;i
{
b[i]=a[i];
}
具体原因同样后面讲,目前只要记住就好。
C语言连载即将进入深水区,一大波难点即将来袭,请没跟上的同学抓紧复习,最好找本书看,编程新手理解我这连载应该还是有点难度的,而且并没有书上讲的细,毕竟讲的太细根本更不过来,而且这些知识网上都搜得到,这里只是讲一讲重点,具体的还是要靠大家自己下去努力。
明天分享一套C语言教程的视频,个人感觉知识点讲的很全面,示例也很丰富。
领取专属 10元无门槛券
私享最新 技术干货