Objective-C中的基本数据类型

//
//  main.m
//  01.基本数据类型
//
//  Created by zhangqs008 on 14-2-13.
//  Copyright (c) 2014年 zhangqs008. All rights reserved.
//

#import <Foundation/Foundation.h>

int main(int argc, const char * argv[])
{
    @autoreleasepool {
        
        //01.基本数据类型长度
        NSLog(@"01.基本数据类型长度");
        NSLog(@"The size of an int is: %lu bytes.",sizeof(int));
        NSLog(@"The size of a short int is: %lu bytes.",sizeof(short int));
        NSLog(@"The size of a long int is: %lu bytes.",sizeof(long int));
        NSLog(@"The size of a char is: %lu bytes.",sizeof(char));
        NSLog(@"The size of a float is: %lu bytes.",sizeof(float));
        NSLog(@"The size of a double is: %lu bytes.",sizeof(double));
        NSLog(@"The size of a bool is: %lu bytes.",sizeof(bool));
        
        //02.格式化输出
        NSLog(@"02.格式化输出");
        int integerType = 5;//整型
        float floatType = 3.1415; //浮点型
        double doubleType = 2.2033;//双浮点型
        short int shortType = 200;//短整型
        long long int longlongType = 7758123456767L;//长整型
        char * cstring = "this is a string!";//c语言字符串
        
        //整型
        NSLog(@"The value of integerType = %d",integerType);
        //浮点型
        NSLog(@"The value of floatType = %.2f",floatType);
        //双浮点型
        NSLog(@"The value of doubleType = %e",doubleType);
        //短整型
        NSLog(@"The value of shortType = %hi",shortType);
        //长整型
        NSLog(@"The value of longlongType = %lli",longlongType);
        //c语言字符串
        NSLog(@"The value of cstring = %s",cstring);
        
        //03.NSString与NSInteger的相互转换
        NSLog(@"03.NSString与NSInteger的相互转换");
        NSInteger integerNumber = 888;
        NSString *string = [NSString stringWithFormat:@"%ld",(long)integerNumber];
        NSLog(@"string is %@", string);
        
        NSInteger integer = [string intValue];
        NSLog(@"integer is %ld", (long)integer);
        
        //04.int,NSInteger,NSUInteger,NSNumber
        //1.当须要使用int类型的变量的时候,能够像写C的程序同样,用int,也能够用NSInteger,但更推荐使用NSInteger,由于这样就不用考虑设备是32位的仍是64位的。
        //2.NSUInteger是无符号的,即没有负数,NSInteger是有符号的。
        //3.NSInteger是基础类型,可是NSNumber是一个类。若是想要在NSMutableArray里存储一个数值,直接用NSInteger是不行的,必须转换为数字对象;
        
    }
    return 0;
}

输出结果:this

2014-02-13 21:19:33.633 01.基本数据类型[1463:303] 01.基本数据类型长度spa

2014-02-13 21:19:33.634 01.基本数据类型[1463:303] The size of an int is: 4 bytes.指针

2014-02-13 21:19:33.635 01.基本数据类型[1463:303] The size of a short int is: 2 bytes.code

2014-02-13 21:19:33.635 01.基本数据类型[1463:303] The size of a long int is: 8 bytes.orm

2014-02-13 21:19:33.635 01.基本数据类型[1463:303] The size of a char is: 1 bytes.对象

2014-02-13 21:19:33.636 01.基本数据类型[1463:303] The size of a float is: 4 bytes.blog

2014-02-13 21:19:33.636 01.基本数据类型[1463:303] The size of a double is: 8 bytes.ip

2014-02-13 21:19:33.636 01.基本数据类型[1463:303] The size of a bool is: 1 bytes.字符串

2014-02-13 21:19:33.637 01.基本数据类型[1463:303] 02.格式化输出string

2014-02-13 21:19:33.637 01.基本数据类型[1463:303] The value of integerType = 5

2014-02-13 21:19:33.637 01.基本数据类型[1463:303] The value of floatType = 3.14

2014-02-13 21:19:33.638 01.基本数据类型[1463:303] The value of doubleType = 2.203300e+00

2014-02-13 21:19:33.639 01.基本数据类型[1463:303] The value of shortType = 200

2014-02-13 21:19:33.639 01.基本数据类型[1463:303] The value of longlongType = 7758123456767

2014-02-13 21:19:33.640 01.基本数据类型[1463:303] The value of cstring = this is a string!

2014-02-13 21:19:33.640 01.基本数据类型[1463:303] 03.NSStringNSInteger的相互转换

2014-02-13 21:19:33.640 01.基本数据类型[1463:303] string is 888

2014-02-13 21:19:33.641 01.基本数据类型[1463:303] integer is 888

Program ended with exit code: 0 

附:格式化输出符号:

%@          对象 %d, %i     整数 %u            无符整形 %f             浮点/双字 %x, %X    二进制整数 %o            八进制整数 %zu          size_t %p           指针 %e           浮点/双字 (科学计算) %g           浮点/双字 %s            C 字符串 %.*s         Pascal字符串 %c           字符 %C          unichar %lld         64位长整数(long long) %llu        无符64位长整数 %Lf         64位双字 %e          实数,用科学计数法计 

相关文章
相关标签/搜索