ios学习第一天(二)oc基本数据类型

来源:互联网 发布:阿里云网站域名 编辑:程序博客网 时间:2024/05/23 23:15

如果你学过C语言,会觉得很轻松,基本和C语言一样的,和java语言差别也不是很大,但是输出的时候就不一样了。C语言要比java灵活的多,有些写法,只学过java的人一时半会怕是很难接受(这里引用王者荣耀中姜子牙说的话:不刷新世界观,怎么可能成长),想学什么也要接受,毕竟我也用java写了好久程序了。其实挺讨厌这些数据类型的,一下子这么多,用的时候搜就好了。

基本数据类型:

OC中有如下基本数据类型:
整数类型:
    char :字符型  short:短整型  int:整型  long:长整型 long long 长整型
    signed:有符号类型变量 unsigned:无符号类型变量(这个只能修饰上面的char short int long 和long long)
浮点类型:
    double:双精度变量  float:浮点型变量


其他类型:
    id:通用的指针类型
    enum:枚举类型
    struct:结构体类型
    union:共用体(联合)数据类型
    void:函数无返回值或无参

-----------------------------------------------------------------------------------------------------------------------------------------------------------------------

数据类型格式化符:
整型 int %d %i    短整型 short int %hd %hi    长类型 long int %ld %li
无符号短整型 unsigned int %u   无短整型 unsigned short %hu    无符号长整型 unsigned long %lu
浮点型 float %f  双精度型 double %f    长双精度型 long double %lf
字符型 char %c

字符串 %s    十六进制 %x     八进制 %o


随手写的示例代码:

////  main.m//  HelloWorld////  Created by Moluth on 17/4/5.//  Copyright (c) 2017年 Moluth. All rights reserved.////头文件。里面包含了好多东西,可以算是一个基本框架吧#import <Foundation/Foundation.h>//main函数,程序入口 argc 参数个数,argv 所有参数字符串类型int main(int argc, const char * argv[]) {    //从名字上来看,这个代码块应该可以自动释放内存    @autoreleasepool {        // insert code here...        NSLog(@"Hello, World!");        int a,b=10,c;//声明变量,c没有赋值,默认值是0,在c语言中变量不赋值,有些编译器编译后结果不可预知,有些是0,不建议不赋值使用        a=b+5;//赋值语句        NSLog(@"a=%d b=%d c=%d\n",a,b,c);//输出:a=15 b=10 c=0 %d %c %s %f %lf %ld %lld %o %x                //////////////////////////////////        unsigned int ua,ub,uc=123u;//u代表无符号数        long long la,lb,lc=123ll;        float fa,fb,fc=12.0f;        double da,db,dc;        char cc='a';//字符类型        cc='\n';//换行符        a=a+cc;        bool bb=0;//bb=false; 布尔类型,值只有true和false        bb=true;        short sa,sb,sc;        const int cia=18,cid;                a=0x16f0;//十六进制        NSLog(@"a=%x a=%d",a,a);//a=16f0 a=5872        a=0123;//八进制        NSLog(@"a=%o a=%d",a,a);//a=123 a=83            }        return 0;//返回值}





0 0