黑马程序员——OC---初接触及基本语法

安卓面经PowerManagerService待机流程_12 目前有两个选择,一个是高通的算法岗,自动驾驶部门,实习内容会偏预研,也会接触部署;中移在线杭州产品运营及分析的u们收到的都是哪个部门的oc预录取呀 #中移在线# #中移在线杭州#lz小硕,暑期实习找的是自驾决策规划岗位,之前发过offer选择贴,最近又被一些公司捞了,面完这一波。都是 cpp 开发。一面业务:针对学过的科目问实际工程问题,处于难和不难之间,太久没学专业课忘了,问了喘振怎么解决,系统。#前端# #offer选择# #腾讯# #小红书# #腾讯pcg# 小红书 质量效能部门,也不太了。 阅读详情

------<a href="http://www.itheima.com" target="blank">Java培训、Android培训、iOS培训、.Net培训</a>、期待与您交流! -------

一 OC简介

1 OC是在C语言的基础上,增加了一层最小的面向对象语法,所以完全兼容C语言,可以在OC代码中混入C语言代码,甚至是C++代码。可以使用OC开发Mac OS X平台和iOS平台的应用程序。

二 OC语法预览

1 关键字

OC的关键字基本都是以@开头的,仅有极少数的例外,下面列举一些常见的关键字:

@interface、@implementation、@end

@public、@protected、@private、@selector

@try、@catch、@throw、@finally 

@protocol、@optional、@required、@class

@property、@synthesize、@dynamic

self、super、id、_cmd、__block、__strong、__weak

OC的字符串是以@开头的,比如@"Hello"是OC中的字符串,而"Hello"则是C语言中的字符串。

2 其他语法

基本数据类型char int float double BOOL(YES  or NO)
nil相当C语言中的NULL,也就是0
基本语句循环(do while, while,for)、条件语句(if ,if-else,switch)
注释// /*.....*/
屏幕输出NSLog(@"my name is %@",name)

三 OC程序的开发过程

与c类似,先将源文件(.m文件)编译生成.o目标文件,然后连接生成可执行文件。

四 基本语法预览

1 C语言一样,OC程序的入口依然是main函数,只不过写到一个.m文件中。比如这里写到一个main.m文件中(文件名可以是中文)

2 终端指令

编译cc –cmain.m; 链接cc main.o –framework Foundation;运行./a.out

3 内容输出

跟C语言不一样的,使用NSLog函数输出内容,NSLog与printf的区别如下:

1)   NSLog接收OC字符串作为参数,printf接收C语言字符串作为参数

2)   NSLog输出后会自动换行,printf输出后不会自动换行

3)使用NSLog需要#import <Foundation/Foundation.h>

4)使用printf需要#include <stdio.h>

4  #import的作用

跟#include一样,用来拷贝某个文件的内容,以自动防止文件内容被拷贝多次,也就以为着头文件中不用加入下面的预处理指令了。

5 Foundation框架的作用

他是开发OC、iOS、Mac程序必备的框架,此框架中包含了很多常用的API(应用编程接口),框架中包含了很多头文件,若想使用整个框架的内容,包含它的主头文件即可。

6 BOOL类型的使用

BOOL类型的本质是typedef signed char BOOL;BOOL类型的变量有2种取值:YES、NO,#define YES (BOOL)1,#define NO (BOOL)0;BOOL输出时可以当做整数来用。


Ubuntu 24.04 LTS与Windows 11远程桌面连接:从xrdp闪退到xfce4桌面环境的实战排障 本文详细解决了在Ubuntu 24.04 LTS上使用xrdp连接Windows 11远程桌面时遇到的登录后闪退问题。通过分析日志,定位到默认GNOME桌面环境与xrdp的兼容性冲突,并提供了将桌面环境更换为轻量且兼容性更佳的XFCE4的完整实战解决方案,包括安装、关键配置修改及服务重启步骤,确保远程连接稳定可靠。 阅读详情

相关推荐

基于YOLOv5与海康工业相机的高分辨率实时检测实践

本文详细介绍了基于YOLOv5与海康工业相机的高分辨率实时检测实践,通过优化相机配置、网络传输和YOLOv5模型适配,实现了每秒15帧以上的实时检测性能,缺陷识别准确率高达99.2%。特别适用于电子元件焊接点检测、精密齿轮齿痕检查等对微小缺陷敏感的场景。

weixin_30872499的博客 474

黑马程序员_OC基础00_基本语法

------- android培训、java培训、期待与您交流! ---------- nihao

程序媛coco的专栏 1012

别再死磕AUTOSAR文档了!手把手教你用ISOLAR-A配置BswM模块(附实战流程图)

本文通过Vector ISOLAR-A工具实战演示AUTOSAR BswM模块的配置流程,帮助工程师快速掌握基础软件模式管理。从环境准备到模式仲裁规则配置,再到动作列表实现,详细讲解每个步骤,并提供常见问题排查和高级优化技巧,大幅提升开发效率。

weixin_42542669的博客 248

黑马程序员--OC

------- android培训、java培训、期待与您交流! ---------- 因为OC实在C语言基础上修改的,很熟悉,但是又有很大的区别。c是面向过程,OC是面向对象。java也是面向对象的,但和java也有很多很多区别。 初接触OC,我将我不怎么熟悉的,容易忘的,记下,以待忘记的时候查阅。

CQYCCCCC的博客 497

DSP28335学习笔记——McBSP配置为SPI

由于28335硬件外设上只有一个SPI接口,所以当SPI接口不够用时,可以将McBSP配置为SPI接口。 参考28335的数据手册,当DSP为主机时,配置McBSP为SPI所用到的接线如下图所示。 另外总结一些调试过程中的经验。 1.传输数据位数的确定 由RCR1寄存器中的RWDLEN1和XCR1寄存器中的XWDLEN1决定。分别对应着接受和发送的位数,在配置成SPI模式的时候,这

捕虫少年 1万+

全面分析总结解决Could not transfer artifact org.apache.maven.plugins等此类问题的方法

全面分析总结解决Could not transfer artifact org.apache.maven.plugins,Could not transfer artifact xxx from/to xxx等此类问题的方法

ccjjjjdff的博客 1万+

黑马程序员_OC核心与法概述

(一)Xcode功能概述: 在之前的学习中,我们普遍多用终端生成.m,在里面进行编程。在接触到Xcode后,新建project,便可以使用Xcode的诸多辅助功能。Xcode是自动保存,并且写一行代码编译一行代码的。所以当你写完代码,就会自动检测你的语法是否正确,给予你相应的警告或者报错。并且Xcode可以省去大量写垃圾代码的时间,让程序员把工作重心放到别处。 Use of undec

黑马程序员_梁萧 533

gnss变形监测基础(四)

监测站的数据采样率指的是监测站在单位时间内收集数据的频率,通常以赫兹(Hz)为单位。在GNSS变形监测中,数据采样率决定了监测系统能够捕捉到的变形动态变化的详细程度和时间分辨率。例如,一个采样率为1Hz的GNSS监测站意味着它每秒钟收集一次位置数据;而一个采样率为10Hz的监测站则每秒钟收集10次位置数据。较高的采样率能够提供更细致的时间序列数据,有助于分析快速变化的动态过程,如地震活动或建筑物的振动响应。然而,较高的采样率也意味着数据量更大,可能需要更多的存储空间和更强大的数据处理能力。

我的博客 1292

黑马程序员——OC语言------基本语法

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ------- OC基本语法   一、OC简介 C语言是一门面向过程的语言,OC是在C语言的基础上,增加了一层最小的面向对象语法, OC把一些比较复杂的面向对象语法都去掉了,剩下面向对象的精华。OC是一门面向对象的语言,是基于C语言的,所以完全兼容C语言,也就是说我们在开发iOS程序过程中,可以在O

casono1的专栏 554

博途PLC PID仿真LSim_PT1库算法(一阶系统差分方程推导全过程)

博途PLC的PID仿真可以参看下面这篇博客,这篇文章我们主要论坛仿真库LSim的算法由来。如何利用博途PLC PID_Compact 进行PID仿真(一阶系统)_RXXW_Dor的博客-优快云博客博途PLC PID控制器 PID_Compact FB如何使用可以参看下面这篇文章,这里不再赘述。

RXXW_Dor的博客 2858

【通信协议】GATT 与 BLE HID 工作原理详解

详细介绍BLE HID 跟GATT工作原理与两者的交互关系

以实战经验介绍行业知识 843

黑马程序员——OC—类与对象

OC第一篇---类与对象            初学OC会有些不适应,接触了好多新语法,不过既然OC是从C衍生出来的,本质上还是雷同 的,根据我初学的经验来讲C和OC目前的区别有这些:    1.C的源文件是.c,OC的源文件是.m        2.C是面向过程,OC是面向对象的。      3.C是用函数完成功能,OC是用对象的方法完成某些功能。     4.C调用函数,OC用

wu417284911的专栏 415

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

黑马程序员---OC基础---Foundation框架学习

------- android培训、java培训、IOS培训期待与您交流! ---------- 1、什么是Foundation框架。 之前我们创建新的target的时候接触了cocoa class,创建一个cocoa class会同时创建.m文件和.h文件,那么cocoa class到底是什么东西呢? Cocoa不是一种编程语言(它可以运行多种编程语言),它也不是一个开发工具(通过命令

shmily3945的博客 520

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

黑马程序员——OC语言基础——面向对象三大特性之继承

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ------- 继续上一篇博文回顾了OC中封装的相关知识后,这次我继续复习了OC面向对象思想的三大特性之一,继承的相关知识。

Elors的博客 814

黑马程序员 面向对象编程

------- <a href="http://www.itheima.com" target="blank">android培训</a>、<a href="http://www.itheima.com" target="blank">java培训</a>、<a href="http://www.itheima.com" target="blank">ios培训</a>期待与您交流! #**面向对象编程**

千江有水千江月,万里无云万里天。 526

黑马程序员_ARC

ARC 一、补 实在抱歉,上篇blog后面的内容不知道咋回事发不出来,我下面简单讲一下,循环retain的处理方法,然后进入进入正餐。对于相互依赖的类,可以通过重写类的dealloc方法,在方法中首先release一次set方法的实参对象,来解决对象无法销毁的问题。 二、ARC简介 ARC  auto reference counting 看名字auto就可以猜到,MRC模式不用人工,编译

smile -_-的博客 508

黑马程序员 OC基础: Block 和 Protocol

BlockBlock 封装了一段代码,可以再任何时候执行. 与函数指针非常类似的东西,但是据说功能更强大.日后慢慢体验.如何定义 block 变量int (^sunBlock)(int, int);void (^myBlock)(); 注意到^了吗. 这是 Block 定义的专属写法.如何利用 block 封装代码^(int a, int b) { return a - b; };^() {

Stumm的专栏 574

黑马程序猿_OC之内存管理

看完了OC视频里面的内存管理,之前对于内存管理

Done 571

黑马程序员——IOS学习三:Objective-C的扩展OOP,类别,内存管理等——黑马 ios 技术博客

其实自己也不知道这些概念怎么写,总不能直接从书上copy吧,那还不如买书了,这多累。 对于一些抽象的概念,一般都是大师写的。比如那本可以当枕头的java编程思想。那真的是思想啊。1遍过后绝对跟看小说似的,模模糊糊。 而抽象着东西并没有什么很好的定义,因为它无法定义。 真正的理解,可能还是要我们自己的时间和积累。 这会儿我业余学习ios一周,目前红柚子那本刚好边看

黑马程序员杜梦秋的技术博客专栏 573

黑马程序员-自己对的ios中动画的几种方法总结

------http://www.itheima.com" target="blank">Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ------- 之前做过一段时间安卓的简单开发,添加基本的组件还是比较方便的,但是要想达到炫酷的动画效果,需要引用很多方法,每次要完成一动画都要做同样的复杂处理, 这段时间学完C语言,oc语言,接触ios开发后,感觉苹果对

daixeibing的专栏 482

【黑马程序员】iOS学习之路——C语言入门

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ------- 一、 学前准备 学习Mac下 C语言之前,先要掌握一些常用的终端命令,如: ls–l  列出当前目录下的所有内容(文件\文件夹) pwd  显示出当前目录的名称 cd  改变当前操作的目录 cd..  退出当前目录,返回到上一级目录

Kuailets_123的个人博客 626

黑马程序员-iOS视频学习之二

------http://www.itheima.com" target="blank">Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ------- 这部分我来介绍一下自己的学习心得吧!!! 通过对视频的学习,我已经从当初只知道“苹果=贵”这样的概念中,又对其有很多的了解了,现在对苹果的系统有个更加直观的了解了,也对视频学习有了更加多的学习了。 这套学习视

oDanDan1234567890的专栏 606

黑马程序员——上级向资深工程师提出的十个iOS面试问题——黑马 ios 技术博客

上级向资深工程师提出的十个iOS面试问题 不管对于招聘和应聘来说,面试都是很重要的一个环节,特别对于开发者来说,面试中的技术问题环节不仅是企业对应聘者技能和积累的考察,也是一个开发者自我检验的好机会。对于iOS和Mac开发来说,因为本事还算比较新,企业对于这方面的开发者需求也比较大,所以面试时的要求可能并不是很高,一般能知道一些Cocoa和OC的基本知识也就认为可以了。但是对于一个希

黑马程序员杜梦秋的技术博客专栏 645

UE5 场景搭建全流程:从地形材质到光照性能优化实战

实时三维场景开发中,UE5凭借Nanite虚拟几何体与Lumen全局光照,成为搭建高画质游戏环境和电影级场景的主流引擎。其核心原理在于通过虚拟化几何体调度与动态全局光照,让创作者无需手动烘焙LOD即可获得细节丰富的画面,同时保持实时运行性能。在数字孪生、开放世界与视效预览等应用场景中,开发者需要兼顾画质、交互、打包与团队协作,这要求从环境准备、地形搭建、资产材质、光照后期到Sequencer镜头输出形成一套可落地的工程路径。World Partition与数据层管理则为大型世界协同提供支撑,而性能排查与运行

weixin_34221775的博客 307

amd显卡风扇调节_中端游戏显卡新晋黑马,华硕ROG STRIX RX5600XT O6G GAMING拆解评测...

在年初的CES2020上,AMD发布了面向中端市场的Radeon RX 5500 XT,进一步完善了自己的游戏显卡产品线。在本月21日,RX 5600 XT正式解禁发布。各大AIB厂商也在第一时间推出了自己的相关产品。我们也在第一时间收到了来自华硕的ROG STRIX RX5600XT O6G GAMING显卡,下面我们就一起来看看它的表现吧。家族化设计,诸多黑科技加持华硕ROG STR...

weixin_33242139的博客 890

C4D的几大主流渲染器!看完你就知道选择学习哪款了

Hello,大家好,这里是小球C4D 全程手码,喜欢的小伙伴记得三连击哦 关于C4D,你除了知道他是一个强大的三维神器,还对他有什么了解吗? 而今天我就给大家盘点一下,大家学习使用C4D必须要接触的四大渲染器 当然常用的并不只是我今天要主讲的四款,C4D常见的渲染器非常多,简单列举一下就有标准/物理渲染器,Octane渲染器,Redshift渲染器,Arnold渲染器,Corona渲染器,VRay渲染器,Cycles 4D渲染器,Krakatoa渲染器等等,当然,C4D渲染器并不是只有这八款,还有一

z21215421的博客 1万+
上一篇: C++之stack.top()
下一篇: 黑马程序员——OC---面向对象之类和对象
hityu
博客等级 码龄15年 1粉丝 16原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值