国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

三字母詞和轉(zhuǎn)義字符

2019-11-11 00:30:24
字體:
供稿:網(wǎng)友

1. 三字母詞

在C語言中有一種三字母詞的說法,trigraph sequences,目前為止有九種三字母詞,如下

??=               #                  ??)            ]                  ??!           |        

??(                [                   ??'            ^                  ??>          }??/                /                    ??<          {                   ??-           ~

三字母詞出現(xiàn)的原因是,為了避免以前的老式鍵盤中沒有上面的九種字符

這里還需要注意的是,在用gcc編譯時(shí)可能會(huì)出現(xiàn)如下錯(cuò)誤

在編譯時(shí)如果不加-trigraphs會(huì)出現(xiàn)如下警告warning: trigraph ??/ ignored, use -trigraphs to enable我們需要在編譯時(shí)加上-trigraphs選項(xiàng),而且需要加在最前面。cc -trigraphs -o test test.c

這里我們需要注意的一點(diǎn)就是,當(dāng)我們看到兩個(gè)問號(hào)同時(shí)出現(xiàn)時(shí),就留意一下三字母詞,避免引起不必要的麻煩,防止出現(xiàn)三字母詞,即想打印出兩個(gè)問號(hào)時(shí),就使用/?

2. 轉(zhuǎn)義字符

我們?cè)诰帉慍程序的時(shí)候,會(huì)想要打印出某些符號(hào),但是因?yàn)檫@些符號(hào)是有特殊含義的,所以經(jīng)常不能如愿,接下來就是轉(zhuǎn)義字符了

轉(zhuǎn)義字符(escape sequence)由一個(gè)反斜杠/加上一個(gè)或多個(gè)其他字符組成。

/?在書寫連續(xù)多個(gè)問號(hào)時(shí)使用,防止它們被解釋為三字母詞。

/"用于表示一個(gè)字符串常量內(nèi)部的雙引號(hào)。

/'用于表示字符常量‘。

//用于表示一個(gè)反斜杠,防止它被解釋為一個(gè)轉(zhuǎn)義序列符。

/a警告字符。
/b退格鍵
/f進(jìn)紙字符
/n換行符
/r回車符
/t水平制表符
/v水平制表符
/dddddd表示1~3個(gè)八進(jìn)制數(shù)字,表示八進(jìn)制所對(duì)應(yīng)的十進(jìn)制數(shù)對(duì)應(yīng)ASCII對(duì)應(yīng)的字符。
/xddd與上例類似,只是八進(jìn)制數(shù)換成了十六進(jìn)制數(shù)

3.小例題

     這里我們來看一道題目

len = strlen("c:/code/test/ten.c");

這個(gè)時(shí)候len的結(jié)果是15,因?yàn)?為當(dāng)成是一個(gè)轉(zhuǎn)義字符的標(biāo)識(shí),所以這里/c和/t被分別當(dāng)成是一個(gè)字符

變式1:len = strlen("c://code//test//ten.c");

結(jié)果是18,這里//被當(dāng)成是一個(gè)字符,表示一個(gè)/,而c和t就被當(dāng)成是一個(gè)字符

變式2:len = strlen("c://code//test//ten.c/123");

結(jié)果是19,因?yàn)楹竺娴?123,是上文中轉(zhuǎn)義字符的一種,表示123八進(jìn)制所對(duì)應(yīng)的十進(jìn)制數(shù)對(duì)應(yīng)的asall碼多對(duì)應(yīng)的字符

變式3:len = strlen("c://code//test//ten.c/023");

這里的結(jié)果是還是19,題目沒有把/0作為結(jié)束的標(biāo)識(shí)

變式4:len = strlen("c://code//test//0ten.c/023");

這里的結(jié)果是12,因?yàn)?0在這里被當(dāng)成是結(jié)束的字符串標(biāo)識(shí),并且不被strlen統(tǒng)計(jì)成一個(gè)字符


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 湾仔区| 商丘市| 兴义市| 卢氏县| 平昌县| 千阳县| 环江| 喜德县| 宜春市| 耒阳市| 宁远县| 耒阳市| 泰安市| 仪征市| 措勤县| 固始县| 江阴市| 金塔县| 楚雄市| 云南省| 方城县| 乌鲁木齐县| 和林格尔县| 浪卡子县| 荥经县| 宿迁市| 肥东县| 射洪县| 湘潭市| 新安县| 大关县| 宁海县| 江永县| 琼海市| 扬州市| 页游| 淮滨县| 屯留县| 合川市| 微山县| 达州市|