日本高清不卡中文字幕-一起草草视频在线观看-亚洲精品一区二区三区色-国产亚洲精品免费视频

您好,歡迎進(jìn)入深圳市穎特新科技有限公司官方網(wǎng)站!

您現(xiàn)在的位置:首頁(yè) 新聞資訊 >> 新聞?lì)^條 >> C語(yǔ)言字符數(shù)組和字符串
新聞資訊
NEWS INFORMATION

C語(yǔ)言字符數(shù)組和字符串

發(fā)布時(shí)間:2019-05-22

用來(lái)存放字符的數(shù)組稱(chēng)為字符數(shù)組,例如:

  1. char a[10]; //一維字符數(shù)組
  2. char b[5][10]; //二維字符數(shù)組
  3. char c[20]={'c', ' ', 'p', 'r', 'o', 'g', 'r', 'a','m'}; // 給部分?jǐn)?shù)組元素賦值
  4. char d[]={'c', ' ', 'p', 'r', 'o', 'g', 'r', 'a', 'm' }; //對(duì)全體元素賦值時(shí)可以省去長(zhǎng)度

字符數(shù)組實(shí)際上是一系列字符的集合,也就是字符串(String)。在C語(yǔ)言中,沒(méi)有專(zhuān)門(mén)的字符串變量,沒(méi)有string類(lèi)型,通常就用一個(gè)字符數(shù)組來(lái)存放一個(gè)字符串。

C語(yǔ)言規(guī)定,可以將字符串直接賦值給字符數(shù)組,例如:

  1. char str[30] = {"c.biancheng.net"};
  2. char str[30] = "c.biancheng.net"; //這種形式更加簡(jiǎn)潔,實(shí)際開(kāi)發(fā)中常用

數(shù)組第0個(gè)元素為 'c',第1個(gè)元素為 '.',第2個(gè)元素為 'b',后面的元素以此類(lèi)推。也可以不指定數(shù)組長(zhǎng)度,例如:

  1. char str[] = {"c.biancheng.net"};
  2. char str[] = "c.biancheng.net"; //這種形式更加簡(jiǎn)潔,實(shí)際開(kāi)發(fā)中常用


在C語(yǔ)言中,字符串總是以'\0'作為串的結(jié)束符。上面的兩個(gè)字符串,編譯器已經(jīng)在末尾自動(dòng)添加了'\0'

'\0'是ASCII碼表中的第0個(gè)字符,用NUL表示,稱(chēng)為空字符。該字符既不能顯示,也不是控制字符,輸出該字符不會(huì)有任何效果,它在C語(yǔ)言中僅作為字符串的結(jié)束標(biāo)志。

puts 和 printf 在輸出字符串時(shí)會(huì)逐個(gè)掃描字符,直到遇見(jiàn) '\0' 才結(jié)束輸出。請(qǐng)看下面的例子:

  1. #include <stdio.h>
  2. int main(){
  3. int i;
  4. char str1[30] = "http://c.biancheng.net";
  5. char str2[] = "C Language";
  6. char str3[30] = "You are a good\0 boy!";
  7. printf("str1: %s\n", str1);
  8. printf("str2: %s\n", str2);
  9. printf("str3: %s\n", str3);
  10. return 0;
  11. }

運(yùn)行結(jié)果:
str1: http://c.biancheng.net
str2: C Language
str3: You are a good

str1 和 str2 很好理解,編譯器會(huì)在字符串最后自動(dòng)添加 '\0',并且數(shù)組足夠大,所以會(huì)輸出整個(gè)字符串。對(duì)于 str3,由于字符串中間存在 '\0',printf() 掃描到這里就認(rèn)為字符串結(jié)束了,所以不會(huì)輸出后面的內(nèi)容。

需要注意的是,用字符串給字符數(shù)組賦值時(shí)由于要添加結(jié)束符 '\0',數(shù)組的長(zhǎng)度要比字符串的長(zhǎng)度(字符串長(zhǎng)度不包括 '\0')大1。例如:

char str[] = "C program";

該數(shù)組在內(nèi)存中的實(shí)際存放情況為:

字符串長(zhǎng)度為 9,數(shù)組長(zhǎng)度為 10。

聯(lián)系方式0755-82591179

傳真:0755-82591176

郵箱:vicky@yingtexin.net

地址:深圳市龍華區(qū)民治街道民治大道973萬(wàn)眾潤(rùn)豐創(chuàng)業(yè)園A棟2樓A08

新宁县| 乌拉特中旗| 丰宁| 随州市| 宿松县| 房山区| 盐边县| 泸西县| 福安市| 凤城市| 应城市| 开平市| 积石山| 油尖旺区| 个旧市| 历史| 赤峰市| 阜南县| 顺平县| 教育| 通河县| 鄂托克旗| 饶河县| 奉贤区| 新乐市| 谢通门县| 瓮安县| 来凤县| 永泰县| 库车县| 石阡县| 巩义市| 常州市| 错那县| 土默特左旗| 临武县| 许昌县| 金乡县| 通州区| 靖西县| 三原县|