C語言的基礎資料型別 (Elementary Data Type)長度

來源:互聯網
上載者:User

標籤:

PS:以下內容是在Xcode的編輯器64位環境下的測試結果,網上有關於64位和32位各資料類型存在的差異,請自行online search。 

main.m

 1 #import <Foundation/Foundation.h> 2 void basicDataTypeInC() { 3     NSMutableString *mStrInfo = [[NSMutableString alloc] init]; 4     //(數實值型別-》整型)整型;-2147483648至2147483647 5     int integerVal = 888; 6     //(數實值型別-》整型)短整型 7     short int shortIntegerVal = 888; 8     //(數實值型別-》整型)長整型 9     long int longIntegerVal = 888;10     11     //(數實值型別-》浮點型)單精確度型,存在失精度的情況(如下:由於單精確度型,有效位元是6-7位。而整數已佔3位,故小數3位或4位後均為無效數字)12     float floatVal = 888.8888888888;13     //(數實值型別-》浮點型)雙精確度型(如下:由於是雙精確度型,有效位元是15-16位。但VC6.0規定小數後最多保留6位,其餘部分四捨五入)14     double doubleVal = 888.8888888888;15     16     17     //字元類型18     char charVal = ‘a‘;19     char charVal2 = 97;20     //字串類型;實質是使用指標類型21     char *charVal3 = "I am a string.";22     23     //布爾型;非0和false,即為1表示true24     bool boolVal = true;25     bool boolVal2 = -1;26     bool boolVal3 = 1;27     bool boolVal4 = 2;28     [mStrInfo appendFormat:@"\nintegerVal=%i\n", integerVal]; //integerVal=88829     [mStrInfo appendFormat:@"shortIntegerVal=%hi\n", shortIntegerVal]; //shortIntegerVal=88830     [mStrInfo appendFormat:@"longIntegerVal=%li\n", longIntegerVal]; //longIntegerVal=88831     [mStrInfo appendFormat:@"floatVal=%f\n", floatVal]; //floatVal=888.88891632     [mStrInfo appendFormat:@"doubleVal=%f\n", doubleVal]; //doubleVal=888.88888933     [mStrInfo appendFormat:@"charVal=%c\n", charVal]; //charVal=a34     [mStrInfo appendFormat:@"charVal2=%c\n", charVal2]; //charVal2=a35     [mStrInfo appendFormat:@"charVal3=%s\n", charVal3]; //charVal3=I am a string.36     [mStrInfo appendFormat:@"boolVal=%i\n", boolVal]; //boolVal=137     [mStrInfo appendFormat:@"boolVal2=%i\n", boolVal2]; //boolVal2=138     [mStrInfo appendFormat:@"boolVal3=%i\n", boolVal3]; //boolVal3=139     [mStrInfo appendFormat:@"boolVal4=%i\n\n\n", boolVal4]; //boolVal4=140     41     42     [mStrInfo appendFormat:@"sizeof(int) 為%lu個位元組\n", sizeof(int)]; //sizeof(int) 為4個位元組43     [mStrInfo appendFormat:@"sizeof(short int) 為%lu個位元組\n", sizeof(short int)]; //sizeof(short int) 為2個位元組44     [mStrInfo appendFormat:@"sizeof(long int) 為%lu個位元組\n", sizeof(long int)]; //sizeof(long int) 為8個位元組45     [mStrInfo appendFormat:@"sizeof(float) 為%lu個位元組\n", sizeof(float)]; //sizeof(float) 為4個位元組46     [mStrInfo appendFormat:@"sizeof(double) 為%lu個位元組\n", sizeof(double)]; //sizeof(double) 為8個位元組47     [mStrInfo appendFormat:@"sizeof(char) 為%lu個位元組\n", sizeof(char)]; //sizeof(char) 為1個位元組48     [mStrInfo appendFormat:@"sizeof(bool) 為%lu個位元組", sizeof(bool)]; //sizeof(bool) 為1個位元組49     NSLog(@"%@", mStrInfo);50 }51 int main(int argc, const char * argv[]) {52     @autoreleasepool {53         NSLog(@"C語言的基礎資料型別 (Elementary Data Type)長度");54         basicDataTypeInC();55     }56     return 0;57 }

 

結果:

 1 2015-05-15 23:01:06.687 CBasicDataType[917:36520] C語言的基礎資料型別 (Elementary Data Type)長度 2 2015-05-15 23:01:06.688 CBasicDataType[917:36520]  3 integerVal=888 4 shortIntegerVal=888 5 longIntegerVal=888 6 floatVal=888.888916 7 doubleVal=888.888889 8 charVal=a 9 charVal2=a10 charVal3=I am a string.11 boolVal=112 boolVal2=113 boolVal3=114 boolVal4=115 sizeof(int) 為4個位元組16 sizeof(short int) 為2個位元組17 sizeof(long int) 為8個位元組18 sizeof(float) 為4個位元組19 sizeof(double) 為8個位元組20 sizeof(char) 為1個位元組21 sizeof(bool) 為1個位元組

 

C語言的基礎資料型別 (Elementary Data Type)長度

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.