C++中,int,char,double,这三个声明的用法有何区别?如何正确选择使用? C语言中,int、char、float、double的区别和...

\u5728c++\u4e2d\u5b9a\u4e49\u65f6int\u548cdouble\u6709\u4f55\u533a\u522b

int \u548c double \u90fd\u662f\u57fa\u672c\u6570\u636e\u7c7b\u578b, int \u662f\u6574\u5f62, double \u662f\u6d6e\u70b9\u578b\u3002
1.int \u578b\u53d8\u91cf\u5360\u7528\u7684\u5b58\u50a8\u7a7a\u95f4\u548c\u673a\u5668\u5b57\u4e00\u6837\u5927\uff0c\u5373 32\u4f4d\u7cfb\u7edf\u4e2d\u662f 4\u4e2a\u5b57\u8282; 64\u4f4d\u7cfb\u7edf\u4e2d\u662f 8\u4e2a\u5b57\u8282;
\u800c double \u578b\u53d8\u91cf \u4e00\u822c\u5360\u75288\u5b57\u8282\uff0cdouble \u578b\u53d8\u91cf\u5360\u7528\u7684\u5b58\u50a8\u7a7a\u95f4\u4e0d\u4f1a\u5c0f\u4e8e int \u578b\u53d8\u91cf\u3002
2.double \u578b\u8868\u793a\u7684\u503c\u8303\u56f4\u8981\u6bd4 int \u8868\u793a\u7684\u503c\u8303\u56f4\u5927\uff0c\u4e14\u4ece double \u503c\u8f6c\u6362\u5230 int \u503c\uff0c\u4f1a\u8fdb\u884c\u56db\u820d\u4e94\u5165\uff0c\u4ece\u800c\u6709\u7cbe\u5ea6\u635f\u5931\u3002

\u6269\u5c55\u8d44\u6599
\u4e00\u6574\u5f62
1.\u6574\u5f62\u6709char\u3001short\u3001int\u3001long\u3001long long\uff0c\u8fd95\u4e2a\u4e5f\u9ed8\u8ba4\u4e3asigned XX ;
\u89c4\u5219\uff1ashort\u81f3\u5c1116\u4f4d\uff1bint\u81f3\u5c11\u548cshort\u4e00\u6837\uff1blong\u81f3\u5c1132\u4f4d\uff0c\u4e14\u81f3\u5c11\u548cint\u4e00\u6837\u957f\uff1blong long\u81f3\u5c1164\u4f4d\uff0c\u4e14\u81f3\u5c11\u548clong\u4e00\u6837\u957f\u3002
\u5176\u4e2d\uff0c\u540e\u97624\u4e2a\u90fd\u6709\u65e0\u7b26\u53f7\u53d8\u4f53\u3002unsigned short\u3001unsigned int\u3001unsigned long\u3001unsigned long long.
\u6ce8\u610f\uff0cunsigned\u672c\u8eab\u662funsigned int\u7684\u7f29\u5199\u3002
\u53ef\u4ee5\u770b\u5230\uff0c\u572832\u4f4d\u548c64\u4f4d\u8ba1\u7b97\u673a\u4e0a\uff0c\u5bf9\u4e8e\u6574\u5f62\u552f\u4e00\u4e0d\u540c\u7684\u5c31\u662fint\u548c\u6307\u9488\u7684\u5927\u5c0f\uff0c\u5176\u4e2d32\u4f4d\u8ba1\u7b97\u673a\u4e0aint\u53602\u5b57\u8282\uff0c64\u4f4d\u4e0a\u53604\u5b57\u8282\u3002\u6307\u9488\u5927\u5c0f\u548cint\u5927\u5c0f\u76f8\u540c\u3002
2.wchar_t
char\u662f8\u4f4d\u5b57\u7b26\u7c7b\u578b\uff0c\u6700\u591a\u53ea\u80fd\u5305\u542b256\u79cd\u5b57\u7b26\uff0c\u8bb8\u591a\u5916\u6587\u5b57\u7b26\u96c6\u6240\u542b\u7684\u5b57\u7b26\u6570\u76ee\u8d85\u8fc7256\u4e2a\uff0cchar\u578b\u65e0\u6cd5\u8868\u793a\u3002
wchar_t\u6570\u636e\u7c7b\u578b\u4e00\u822c\u4e3a16\u4f4d\u621632\u4f4d.
\u603b\u4e4b\uff0cwchar_t\u6240\u80fd\u8868\u793a\u7684\u5b57\u7b26\u6570\u8fdc\u8d85char\u578b\u3002
\u6807\u51c6C++\u4e2d\u7684wprintf()\u51fd\u6570\u4ee5\u53caiostream\u7c7b\u5e93\u4e2d\u7684\u7c7b\u548c\u5bf9\u8c61\u80fd\u63d0\u4f9bwchar_t\u5bbd\u5b57\u7b26\u7c7b\u578b\u7684\u76f8\u5173\u64cd\u4f5c\u3002
3.++11\u65b0\u589e\u7c7b\u578b\uff1achar16_t\u548cchar32_t
char16_t\uff1a16\u4f4d\u65e0\u7b26\u53f7->\u524d\u7f00u\u8868\u793a
char32_t\uff1a32\u4f4d\u65e0\u7b26\u53f7->\u524d\u7f00U\u8868\u793a
\u4e8c\u3001\u6d6e\u70b9\u578b
\u6d6e\u70b9\u67093\u4e2a\uff0cfloat\u3001double\u3001long double
\u89c4\u5219\uff1afloat\u81f3\u5c114\u5b57\u8282\uff1bdouble\u81f3\u5c116\u5b57\u8282\uff0c\u4e14\u4e0d\u5c11\u4e8efloat\uff1blong double\u81f3\u5c11\u548cdouble\u4e00\u6837\u591a\u3002
\u901a\u5e38float32\u4f4d\uff0cdouble64\u4f4d\uff0clong double80\u300196\u6216128\u4f4d\u3002\u6211\u5728VS2013\u4e0a\u6d4b\u5230long double\u4f4d64\u4f4d\u3002
\u53c2\u8003\u8d44\u6599
\u767e\u5ea6\u767e\u79d1-C++
\u767e\u5ea6\u767e\u79d1-\u6570\u636e\u7c7b\u578b

\u53ea\u662f\u6570\u636e\u7c7b\u578b\u4e0d\u540c\u800c\u5df2\uff0c\u5728c\u8bed\u8a00\u4e2d\u6570\u636e\u7c7b\u578b\u4e0d\u540c\uff0c\u5360\u7684\u5185\u5b58\u5b57\u8282\u6570\u4e0d\u540c\uff0c\u6240\u4ee5\u8868\u793a\u6570\u636e\u5927\u5c0f\u4e0d\u4e00\u6837
int \u5360 4\u4e2a\u5b57\u8282 \u53ea\u80fd\u8868\u793a\u6574\u6570
char \u53601\u4e2a\u5b57\u8282 \u53ea\u80fd\u8868\u793a\u5b57\u7b26
float \u548cdouble\u90fd\u662f\u8868\u793a\u5c0f\u6570\uff0cfloat\u53604\u5b57\u8282\uff0cdouble \u53608\u5b57\u8282\uff0c\u8868\u793a\u7684\u6570\u636e\u8303\u56f4\u4e0d\u4e00\u6837

char 是指字符类型,占一个字节内存空间
int 是指整型数据,占四个字节内存空间
double是指双精度浮点型数据,占八字节内存空间

在编程中,根据使用的数据要求进行变量定义,选择合适的变量类型,如:
char choice ; //定义一个字符
cout << "input a choice (0-9):" ;
cin >> choice ; //这里要求输入一个字符0-9,所以,定义成char类型较好。 当然也可以定义成int类型,如:

int choice ;
cout << "input a choice (0-9):" ;
cin >> choice ;

int age ; //年龄当然用整型变量合适
int n;
如果需要用到小数,就使用double,如:
double money;
double distance ; //计算两点间的距离

声明方法相同,只是每一个类型都有自己表达的数据范围
int 只能表示整数
char 表示字符
double表示浮点数,即带小数点的数
在输入的时候使用不同的标识,比如int 用scanf("%d", &a);char用%c,char数组用%s,double用%lf

  • int,char,float鏈変粈涔堝尯鍒
    绛旓細鍖哄埆濡備笅锛氫竴銆佸畾涔夌殑鍖哄埆 1銆int鏄暣鏁板瀷锛岀敤浜庡畾涔夋暣鏁扮被鍨嬬殑鏁版嵁銆2銆char鏄瓧绗﹀瀷锛岀敤浜庡畾涔夊瓧绗︾被鍨嬫暟鎹3銆乫loat鏄崟绮惧害娴偣鍨嬶紝鍙互鍑嗙‘琛ㄧず鍒板皬鏁扮偣鍚庡叚浣嶃備簩銆佸ぇ灏忕殑鍖哄埆 1銆乮nt鍐呭瓨澶у皬涓4bybe銆2銆乧har鍐呭瓨澶у皬涓1bybe銆3銆乫loat鍐呭瓨澶у皬涓4bybe銆
  • int涓char鍖哄埆
    绛旓細1銆佸瓧绗︾被鍨嬩笉鍚 int鏄暣鍨嬫暟鎹紝濡傦細int a 鍒檃鐨勫煎彧鑳芥槸鏁村瀷;濡俛=3銆char鏄瓧绗﹀瀷锛屽锛歝har a 鍒檃鐨勫煎彧鑳芥槸瀛楃鍨;濡俛='a'銆俧loat鏄诞鐐瑰瀷鏁版嵁锛屽锛歠loat a 鍒檃鐨勫煎彧鑳芥槸娴偣鍨嬫暟鎹;濡俛=3.50锛<鍗虫垜浠暟瀛︿腑鐨勫疄鏁帮細蹇呴』鍐欐垚灏忔暟褰㈠紡>銆2銆佸唴瀛樺ぇ灏忎笉鍚 int 鐨勫唴瀛樺ぇ灏忔槸4 涓...
  • C璇█ %d 銆 %f 鍒嗗埆鏄粈涔堟剰鎬?
    绛旓細d琛ㄧず杈撳嚭杈撳叆鏍煎紡涓烘暣鍨嬶紝鐢ㄤ簬int ,short int锛%f琛ㄧず杈撳嚭瀹炴暟锛屼互灏忔暟褰㈠紡杈撳嚭锛岄粯璁ゆ儏鍐典笅淇濈暀灏忔暟鐐6浣嶃C璇█涓紝杈撳叆杈撳嚭鐨勬牸寮忎负锛氳緭鍏ヨ緭鍑虹鍙("<鏍煎紡鍖栧瓧绗︿覆>", <鍙傞噺琛>)锛屾牸寮忓寲瀛楃涓茬敱鏍煎紡鎺у埗銆佸拰杈撳嚭琛ㄥ垪涓ら儴鍒嗙粍鎴愶紝鍏朵腑鏍煎紡鎺у埗鍖呭惈鏍煎紡澹版槑鍜屾櫘閫氬瓧绗︺傛牸寮忓0鏄庣敱鈥%鈥濆拰鏍煎紡瀛楃缁勬垚...
  • 鍦C璇█涓,int绫诲瀷,long绫诲瀷,float绫诲瀷,double绫诲瀷鍜char绫诲瀷鍦16浣嶅拰3...
    绛旓細int 鍦ㄥ唴瀛樹腑鍗4涓瓧鑺傦紝long鍦ㄥ唴瀛樹腑鍗4涓瓧鑺傦紝float:鍗4涓瓧鑺锛宒ouble: 鍗8涓瓧鑺锛宑har锛氬崰1涓瓧鑺傦紝鎿嶄綔鏂规硶濡備笅锛1銆丆#鏀寔8涓瀹氱殑鏁存暟绫诲瀷銆傚垎鍒槸sbyte銆乻hort銆乮nt銆乴ong銆乥yte銆乽short銆乽int銆乽long銆俠yte0-255鏍囧噯鐨8浣嶆暣鏁扮被鍨嬨傞粯璁ゆ槸鏃犵鍙风殑锛屾湁绗﹀彿鐨勪负sbyte銆2銆丆#鐨勬诞鐐圭被鍨...
  • 鍦C璇█绫诲瀷璇存槑涓,int銆char銆乻hort绛夋暟鎹被鍨嬬殑闀垮害
    绛旓細C璇█鏍囧噯涓浜庢暟鎹被鍨嬫墍鍗犲搴︽槸杩欐牱瀹氫箟鐨勶細char灏辨槸1瀛楄妭锛堝浐瀹氫笉鍙橈級锛宻hort涓嶅皯浜2瀛楄妭锛宨nt涓嶅皯浜巗hort锛宭ong涓嶅皯浜4瀛楄妭锛屼笖long涓嶅皯浜int锛long long涓嶅皯浜巐ong銆備篃灏辨槸璇达紝闄や簡char锛鍏朵粬鏁村瀷鑼冨洿閮芥槸鐩稿鑰岃█鐨勶紝纭繚鍚庝竴绉嶇殑瀹藉害涓嶄綆浜庡墠涓绉嶅嵆鍙紙鍙兘鐩哥瓑锛夛紝鍦ㄤ笉鍚岀殑骞翠唬锛岃绠楁満纭欢...
  • ...鐨勬暟鎹被鍨嬭鏄庝繚鐣欏瓧?A Float B signed C inte ger D Char...
    绛旓細淇濈暀瀛楀嵆鍏抽敭瀛椼 鍏辫32涓 鐢变簬C璇█鍖哄垎澶у皬鍐欙紝鎵浠nt鍜Int鏄笉鍚岀殑銆備簬鏄繖閲 A float鎵嶆槸 Float涓嶆槸 B 鏄叧閿瓧銆傝〃绀烘湁绗﹀彿銆侰 int鎵嶆槸锛 integer涓嶆槸銆D char鎵嶆槸 Char涓嶆槸銆傞塀銆
  • char銆 int銆 float鍜宒ouble绫诲瀷鐨勬暟鎹湪璁$畻鏈哄瓨鍌ㄧ┖闂翠腑鍗犵敤鍑犱綅?
    绛旓細閫堿锛岃В鏋愶細鍦16浣峆C鏈涓紝5绉嶅熀鏈暟鎹被鍨嬬殑瀛樺偍绌洪棿闀垮害鐨勬帓鍒椾负锛char鍨嬶細1涓瓧鑺 int鍨嬶細2涓瓧鑺 long int锛4涓瓧鑺傛垨鑰4涓瓧鑺-1浣 float鍨嬶細4涓瓧鑺 double鍨嬶細8涓瓧鑺
  • int鏄暣鍨嬪悧?
    绛旓細鍦C璇█涓紝鏁村瀷甯搁噺鏈変笁绉嶄功鍐欏舰寮忥細锛1锛 鍗佽繘鍒舵暣鏁般傚崄杩涘埗鏁存暟灏辨槸閫氬父鏁存暟鐨勫啓娉曘備緥濡傦細11銆15銆21绛夈傦紙2锛 鍏繘鍒舵暣鏁般傚叓杩涘埗鏁存暟鐨勪功鍐欏舰寮忔槸鍦ㄩ氬父鍏繘鍒舵暣鏁扮殑鍓嶉潰鍔犱竴涓暟瀛0銆備緥濡傦細00銆0111銆015銆021绛夛紝瀹冧滑鍒嗗埆琛ㄧず鍗佽繘鍒舵暣鏁帮細0銆73銆13銆17 锛3锛 鍗佸叚杩涘埗鏁存暟銆傚崄鍏繘鍒舵暣鏁...
  • C璇█閲岄潰char鐨勭敤娉曟槸浠涔?
    绛旓細C璇█涓char鐢ㄤ簬瀹氫箟瀛楃绫诲瀷鍙橀噺鎴栧瓧绗︽寚閽堝彉閲忥紝渚嬪鈥渃har a;鈥濆垯瀹氫箟浜嗗彉閲廰鏄瓧绗︾被鍨嬶紝鈥渃har *a;鈥濆垯瀹氫箟浜嗗彉閲廰鏄瓧绗︽寚閽堢被鍨嬨俢har鏄疌璇█鏁村瀷鏁版嵁涓瘮杈冨彜鎬殑涓涓紝鍏跺畠鐨勫int/long/short绛変笉鎸囧畾signed/unsigned鏃堕兘榛樿鏄痵igned锛屼絾char鍦ㄦ爣鍑嗕腑涓嶆寚瀹氫负signed/unsigned锛岀紪璇戝櫒鍙互瀹炵幇涓...
  • C++涓,int鍨嬪拰char鍨嬬浉涔樺浣曡繍绠?
    绛旓細鍦C/C++涓紝int鍨嬫槸鏁村瀷锛岃宑har 鍨嬫槸瀛楃鍨嬨備絾瀹為檯涓锛宑har涓瓨鍌ㄧ殑瀹為檯鍊兼槸瀛楃鐨凙SCII鐮佸笺傛墍浠ワ紝鍦–/C++涓紝char鏈川涓婃槸涓涓崰鐢ㄥ崟瀛楄妭鐨勬暣鍨嬬被鍨嬨傚綋int鍜宑har杩涜璁$畻锛屽寘鎷姞鍑忎箻闄わ紝鍧囦細鎸夌収int鏉ヨ繍绠楋紝鍗冲厛灏哻har鎸夌収鍊艰浆涓篿nt鍨嬶紝鍐嶈繘琛岃绠椼傜粨鏋滀粛涓篿nt鍨嬨
  • 扩展阅读:c++中<< ... c++ int转char ... c++编程 ... c++ float ... c++vector int char ... 运算符&& ... c++ double ... int & ... unsigned char ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网