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

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

您現(xiàn)在的位置:首頁 新聞資訊 >> 新聞?lì)^條 >> C語言編程基礎(chǔ)學(xué)習(xí)字符型數(shù)據(jù)的ASCII碼值為何是負(fù)數(shù)?
新聞資訊
NEWS INFORMATION

C語言編程基礎(chǔ)學(xué)習(xí)字符型數(shù)據(jù)的ASCII碼值為何是負(fù)數(shù)?

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

C語言是面向過程的,而C++是面向?qū)ο蟮?/h1>

C和C++的區(qū)別:

C是一個(gè)結(jié)構(gòu)化語言,它的重點(diǎn)在于算法和數(shù)據(jù)結(jié)構(gòu)。C程序的設(shè)計(jì)首要考慮的是如何通過一個(gè)過程,對(duì)輸入(或環(huán)境條件)進(jìn)行運(yùn)算處理得到輸出(或?qū)崿F(xiàn)過程(事務(wù))控制)。

C++,首要考慮的是如何構(gòu)造一個(gè)對(duì)象模型,讓這個(gè)模型能夠契合與之對(duì)應(yīng)的問題域,這樣就可以通過獲取對(duì)象的狀態(tài)信息得到輸出或?qū)崿F(xiàn)過程(事務(wù))控制。 所以C與C++的最大區(qū)別在于它們的用于解決問題的思想方法不一樣。之所以說C++比C更先進(jìn),是因?yàn)?ldquo; 設(shè)計(jì)這個(gè)概念已經(jīng)被融入到C++之中 ”。

C與C++的最大區(qū)別:在于它們的用于解決問題的思想方法不一樣。之所以說C++比C更先進(jìn),是因?yàn)?ldquo; 設(shè)計(jì)這個(gè)概念已經(jīng)被融入到C++之中 ”,而就語言本身而言,在C中更多的是算法的概念。那么是不是C就不重要了,錯(cuò)!算法是程序設(shè)計(jì)的基礎(chǔ),好的設(shè)計(jì)如果沒有好的算法,一樣不行。而且,“C加上好的設(shè)計(jì)”也能寫出非常好的東西。

有如下一段C語言程序:

#include "stdio.h"

int main(void)

{

char a = 0xC8;

printf ("字符a的ASCII碼值的10進(jìn)制是%d ", a);

return 0;

}

程序定義了一個(gè)字符‘a’,并且賦予了初始值“0xC8”,這是一個(gè)16進(jìn)制的數(shù)。最后,通過printf函數(shù)輸出字符a的值。

程序不難,光看程序,也應(yīng)該知道最終的結(jié)果。16進(jìn)制“0xC8”的10進(jìn)制數(shù)是200,所以程序應(yīng)該輸出字符a的ASCII碼值是200吧。實(shí)際運(yùn)行結(jié)果如下:

結(jié)果是-56,還是個(gè)負(fù)數(shù),C語言初學(xué)者估計(jì)一頭霧水了。

其實(shí)字符a在定義時(shí)如果就寫一個(gè)“char”,則就默認(rèn)類型是“signed char”,也就是說字符a的10進(jìn)制ASCII碼值是有符號(hào)的,取值范圍是【-128,127】,那么200這個(gè)數(shù)肯定就超過這個(gè)范圍,超過的部分是200 – 127 = 73。那么超過的部分又從-128開始計(jì)數(shù)了,也就是-128 + 73 - 1 = -56了。

如果在定義字符a時(shí),類型寫成“unsigned char”,那么舊標(biāo)明字符a的10進(jìn)制ASCII碼值是無符號(hào)的,取值范圍就是【0,255】了。朋友們可以修改下程序看看結(jié)果是什么。

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

傳真:0755-82591176

郵箱:vicky@yingtexin.net

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

林芝县| 永年县| 绵竹市| 农安县| 宁陵县| 南城县| 永嘉县| 宁德市| 乌什县| 陇川县| 海阳市| 太仆寺旗| 巴彦县| 壤塘县| 乌兰浩特市| 武夷山市| 朝阳区| 喜德县| 峨山| 苍梧县| 山西省| 偃师市| 汶川县| 江口县| 会宁县| 安泽县| 密山市| 建湖县| 松滋市| 平和县| 阳谷县| 诸城市| 怀仁县| 大厂| 米泉市| 抚宁县| 呈贡县| 平塘县| 临沂市| 乌审旗| 壤塘县|