1、问题:
不依靠XCode带的额外特性,只想用Terminal来构建一个简单的Objective-C程序。这个程序将利用Objective-C向Mac的terminal console window上输出一段消息。
2、解决方案
用你喜欢的文本编辑器在你的主目录中创建一个文件,/Users/[yourusername]/。比如vi或Mac带的图形化的TextEdit——请确保要保存为纯文本。
在该文件中加一个main函数,导入Foundation框架。
编译:用工具clang。就能够创建一个可执行文件,可以从terminal screen中运行该文件。
3、原理
Objective-C需要启动的代码总是放在main函数中,该函数带一些参数,并返回一个integer。使用Objective-C对象,需要导入Foundation框架。
在main函数中,必须创建一个autorelease pool,Objective-C用它来管理内存。好了后,就可以用NSString类来创建一个Hello World字符串,并用NSLog将它写到console中。
编译命令clang的选项:
(1)-fobjc 意思是用的编程语言是Objective-C
(2)-arc 自动引用计数
(3)-framework 用于链接到Foundation框架
(4)-o 创建的可执行文件的名字
注意:如果你的Mac运行的是OSX 10.7 or greater,那么你可以使用自动引用计数。ARC是OSX 10.7中可用的一个新特性,用于内存管理。
4、代码
#import <Foundation/Foundation.h>
int main(int argc, const char* argv[]) {
@autoreleasepool {
NSString *helloString = @"Hello World";
NSLog(@"%@", helloString);
}
return 0;
}
5、使用
打开terminal,编译代码。代码文件名:main.m
clang -fobjc -framework Foundation main.m -o maccommandlineapp
运行:
在terminal中输入:run maccommandlineapp
相关推荐
总的来说,MobileTerminal的源码提供了一个深入理解iOS系统和开发的实践案例,特别是对于那些对命令行工具、系统级编程和越狱应用感兴趣的开发者。通过学习和分析这个项目,开发者可以提升自己的iOS底层知识,甚至...
### Rational Functional Tester for Terminal Application #### 一、概述与背景 在软件开发过程中,回归测试是确保代码修改后不会导致意外结果的关键环节。然而,在许多实际应用中,尤其是在那些依赖于终端应用...
【应用】★★★★-MobileTerminal-A GUI Terminal application for the iPhon【应用】★★★★-MobileTerminal-A GUI Terminal application for the iPhon 1.适合学生学习研究参考 2.适合个人学习研究参考 3.适合...
【iOS应用源码Demo-MobileTerminal-A GUI Terminal application-毕设学习.zip】是一个包含iOS应用程序源代码的压缩包,主要用于毕业设计的学习。这个项目名为“MobileTerminal”,它是一个GUI(图形用户界面)终端...
UPI终端规范,英文版。 Application Specification for Terminals Accepting UnionPay Card Part I: Application Specification for Point of Sale (POS) Terminal
iOS是一个封闭的操作系统,出于安全考虑,默认情况下不允许用户直接访问底层命令行工具。MobileTerminal的出现打破了这一限制,为用户提供了一种途径来探索和控制他们的iOS设备。然而,值得注意的是,不恰当或非法的...
MobileTerminal是一款专为iPhone设计的图形用户界面...总之,MobileTerminal源码是一个深入研究iOS开发,特别是底层系统操作的宝贵资料。通过分析源码,开发者不仅可以提升编程技能,还能增进对iOS系统工作原理的理解。
"TTL锁死"通常是指设备的终端(Terminal)级别锁死,这可能是制造商为了防止非授权访问设备内部系统设置的一个安全措施。在TTL锁死状态下,用户无法通过串口(如UART)进行低级别的调试或操作。在这种情况下,降级包...
XTerminal 提供了一个图形用户界面,用户可以通过它来执行命令行操作,访问文件系统,编译程序,进行系统管理等操作。 XTerminal 的特点包括: 1. **多标签支持**:用户可以在同一个窗口中打开多个标签页,方便...
一旦设置完成,用户可以创建一个新的会话并连接到目标设备,从而实现命令行交互或者文件传输。 对于串口通信,HyperTerminal 提供了一个直观的界面,用户可以直接在文本窗口中输入命令,然后发送到连接的设备,接收...
2. **连接管理**:它可以创建多个会话,每个会话对应一个特定的连接配置,如波特率、数据位、停止位、校验位等,方便管理和切换不同的通信设置。 3. **日志记录**: Hyper Terminal具有日志功能,可以记录通信过程...
对于网络管理员和 IT 专业人士来说,HyperTerminal 是一个强大的工具,可以帮助他们诊断网络问题,进行远程管理,或者与旧的、不支持现代通信协议的设备进行交互。 然而,需要注意的是,由于 HyperTerminal 不再...
2. **创建新会话**:首次运行时,需要创建一个新的会话,设置连接的属性,如主机名(IP地址或设备名)、端口号、通信协议(如TCP/IP、串口)以及登录凭据。 3. **连接设备**:配置好参数后,点击“连接”按钮,建立...
5. graph.tsc - 可能是一个图形配置或脚本文件,用于在Terminal1中创建或定制图表和图形输出。这对于数据分析和监控功能尤为重要。 6. delayedsend.tsc - 这个文件可能涉及到定时发送数据的功能,允许用户设定延迟...
- **建立组织单位 (OU)**:在域控制器上创建一个名为 “terminal servers” 的 OU,并将终端服务器加入该 OU。 - **建立全局组**:创建一个全局组 “remote users”,并将所有终端用户添加到该组中。 - **建立漫游...
总的来说,HyperTerminal 7.0 是一个强大的通信工具,适合那些需要频繁与远程系统交互的用户。它的广泛兼容性、Kermit协议的支持以及可定制性使其在许多场景下都能发挥出色的作用。虽然随着现代操作系统的发展,...
FluentTerminal 0.7.0.0版本是其迭代中的一个重要里程碑,它提供了一个全新的64位.appxbundle安装包,这使得在Windows 10系统上安装和使用变得更加便捷。"FluentTerminal.Package_0.7.0.0_x64.appxbundle"文件即为这...
创建一个新的连接,选择“文件” > “新建会话”,然后在“连接到”框中输入“Direct to Computer”,点击“确定”。 在新的会话窗口中,为连接命名,例如“Cisco Router”。在“端口”下拉菜单中选择之前连接的...
这个主题基于Hyper Terminal,一个高度可定制的跨平台终端模拟器,广泛用于JavaScript开发。通过应用这款主题,用户可以将他们的终端转换为一种更为美观且高效的界面,使得在编写和运行JavaScript代码时更加享受。 ...
- 在重新连接到另一个客户端(例如Client3)之前,必须先关闭Client2上的COM3端口映射。这可以通过右键点击Hyper Terminal图标,选择“断开连接”来实现。 - 之后,用户可以在Client3上重新启动桌面会话,执行相同...