关于C和OC


前言

这里谈谈OC和C的一些基础语法的相同和不同:


一、数据类型和运算符

1.注释

在这里插入图片描述

#import <Foundation/Foundation.h>
/*
 这是多行注释
 */
int main(int argc,char* argv[]){
    @autoreleasepool {
        NSLog(@"Hello");
        //输出Hello
        //这里是单行注释
    }
}

这是代码的运行结果,可以看到注释并没有影响整个代码
在这里插入图片描述

2.标识符

在这里插入图片描述
OC在标识符部分和C很相似。这里注意OC中新多出来的东西就行。

3.关键字

在这里插入图片描述
在关键字部分OC和C的要求相同。不能在定义变量时和关键字相同
如下在定义const时会报错
在这里插入图片描述

4.数据类型

在这里插入图片描述
注意这里OC新多出来了一个nil类型

5.基本数据类型

在这里插入图片描述

6.NSLog输出函数

NSLog函数支持的输出格式也和C类似。
需要注意这里@是输出Objective-C的对象即可。

#import <Foundation/Foundation.h>
int main(int argc,char* argv[]){
    @autoreleasepool {
        NSLog(@"Hello Object-C");
    }
    return 0;
}

@是为了区分C的字符串和OC。
使用NSLog函数时,占位符也和C相同。
NSLog函数会自动换行。

7.字符型

OC中常用的转义字符:
在这里插入图片描述

OC的字符变量只占1字节,因此单个的OC变量不支持中文字符。

在这里插入图片描述

类似C中给转义字符在转义。

8.浮点型

1.和C中相同的:
float,double,long bouble类型。
2.表示方式:

  1. 十进制整数形式

必须包含一个小数点

  1. 科学计数法形式

5.12e2(5.12*10²)=5.12E2

3.和C不同的

  1. 正无穷大

(浮点型)正数除以0.0
所有的正无穷大数值都相等

  1. 负无穷大

(浮点型)负数除以0.0
所有的负无穷大都相等

  1. 非数

0.0除以0.0或对负数开平方
所有的非数都不相等

9.BOOL类型

BOOL类型有两个值:YES和NO,分别代表真和假。
OC底层实际使用signed char来表示BOOL,YES和NO在底层实际就是1和0。
如果将一个较大的非零整数赋给BOOL,(这个整数的后八位全为0)系统就会把它当作NO来处理。

10.运算符,运算符的优先级,整形提升,类型转换

这几部分内容和C中一模一样。不在多说。

总结

以后会有补充
说的不对的欢迎指正

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

山河丘壑

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值