C语⾔的基本数据类型长度
PS:以下内容是在Xcode的编辑器64位环境下的测试结果,⽹上有关于64位和32位各数据类型存在的差异,请⾃⾏online search。main.m
1#import <Foundation/Foundation.h>
2void basicDataTypeInC() {
3    NSMutableString *mStrInfo = [[NSMutableString alloc] init];
4//(数值类型-》整型)整型;-2147483648⾄2147483647
5int integerVal = 888;
6//(数值类型-》整型)短整型
7short int shortIntegerVal = 888;c++求字符串长度
8//(数值类型-》整型)长整型
9long int longIntegerVal = 888;
10
11//(数值类型-》浮点型)单精度型,存在失精度的情况(如下:由于单精度型,有效位数是6-7位。⽽整数已占3位,故⼩数3位或4位后均为⽆效数字)
12float floatVal = 888.8888888888;
13//(数值类型-》浮点型)双精度型(如下:由于是双精度型,有效位数是15-16位。但VC6.0规定⼩数后最多保留6位,其余部分四舍五⼊)
14double doubleVal = 888.8888888888;
15
16
17//字符类型
18char charVal = 'a';
19char charVal2 = 97;
20//字符串类型;实质是使⽤指针类型
21char *charVal3 = "I am a string.";
22
23//布尔型;⾮0和false,即为1表⽰true
24bool boolVal = true;
25bool boolVal2 = -1;
26bool boolVal3 = 1;
27bool boolVal4 = 2;
28    [mStrInfo appendFormat:@"\nintegerVal=%i\n", integerVal]; //integerVal=888
29    [mStrInfo appendFormat:@"shortIntegerVal=%hi\n", shortIntegerVal]; //shortIntegerVal=888
30    [mStrInfo appendFormat:@"longIntegerVal=%li\n", longIntegerVal]; //longIntegerVal=888
31    [mStrInfo appendFormat:@"floatVal=%f\n", floatVal]; //floatVal=888.888916
32    [mStrInfo appendFormat:@"doubleVal=%f\n", doubleVal]; //doubleVal=888.888889
33    [mStrInfo appendFormat:@"charVal=%c\n", charVal]; //charVal=a
34    [mStrInfo appendFormat:@"charVal2=%c\n", charVal2]; //charVal2=a
35    [mStrInfo appendFormat:@"charVal3=%s\n", charVal3]; //charVal3=I am a string.
36    [mStrInfo appendFormat:@"boolVal=%i\n", boolVal]; //boolVal=1
37    [mStrInfo appendFormat:@"boolVal2=%i\n", boolVal2]; //boolVal2=1
38    [mStrInfo appendFormat:@"boolVal3=%i\n", boolVal3]; //boolVal3=1
39    [mStrInfo appendFormat:@"boolVal4=%i\n\n\n", boolVal4]; //boolVal4=1
40
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 }
51int main(int argc, const char * argv[]) {
52    @autoreleasepool {
53        NSLog(@"C语⾔的基本数据类型长度");
54        basicDataTypeInC();
55    }
56return0;
57 }
结果:
12015-05-1523:01:06.687 CBasicDataType[917:36520] C语⾔的基本数据类型长度
22015-05-1523: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=a
10 charVal3=I am a string.
11 boolVal=1
12 boolVal2=1
13 boolVal3=1
14 boolVal4=1
15sizeof(int) 为4个字节
16sizeof(short int) 为2个字节17sizeof(long int) 为8个字节18sizeof(float) 为4个字节
19sizeof(double) 为8个字节20sizeof(char) 为1个字节
21sizeof(bool) 为1个字节

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。