zoukankan      html  css  js  c++  java
  • 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;
    }
    

    输出结果:

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

    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.

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

    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.

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

    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.格式化输出

    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          实数,用科学计数法计 

  • 相关阅读:
    第二次作业——结对项目之需求分析与原型模型设计
    第三次作业——结对编程
    采用PowerDesigner 设计数据库
    关于Android开发环境的演变
    广东地区DNS再次瘫痪
    SQL Server 2005 TSQL 中的OUTPUT子句语法
    Visual Studio 里的版本兼容问题
    Javascript 对象扩展积累
    IBatisNet.DataMapper 升级到 1.6.2 之后报错
    ExtJs Extender controls 不错的例子
  • 原文地址:https://www.cnblogs.com/zhangqs008/p/3618403.html
Copyright © 2011-2022 走看看