如何在Windows上编译Objective-C

如何在Windows上编译Objective-C,第1张

1、安装GNUstep

GNUstep Windows Installer提供了Windows平台下的Object-C的模拟开发环境,一共有四个软件包,其中GNUstep System和GNUstep Core是必装的,GNUstep Devel和Cairo Backend是选装的。只安装前两个就够了。

2、编写Objective-C代码

安装完成后,在开始菜单里的GNUstep选项里执行shell,就能打开命令行。直接在Windows里进入C:/GNUstep/home/Administrator(我的是Administrator,可能有的不一样)目录,在这里用你喜欢的工具(现在UltraEdit和Notepad++编辑器好像可以代码高亮)编写Object-C程序。

如:HelloWorld.m

#import <Foundation/Foundation.h>

int main (int argc, const char *argv[]) {

NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]

NSLog(@"Hello World!")

[pool drain]

return 0

}

3、配置环境变量

这一步很重要。GNUstep.sh是用来设置GNUstep开发环境变量的,如果没有执行,就会有很多头文件,库文件,命令找不到

在一个目录里写好了源代码以后,编写一个make配置文件,名字必须叫GNUmakefile,内容是

include $(GNUSTEP_MAKEFILES)/common.make

TOOL_NAME=Test

Test_OBJC_FILES=HelloWorld.m

include $(GNUSTEP_MAKEFILES)/tool.make

可以修改上面的黑体部分

然后就是

make

命令运行成功就可以看到新增了一个obj目录,里面就有你要的可执行文件和.o文件。

OK 搞定了。

思想是等价的,如果没有NSLog(@"%.6f", [deskCalc accumulator])这个打印则是等价的,但实际写出来的确是不等价的

由于:

1,程序2的最后一个else没有对应的if,改为下面就可以了

    else if (operator == '/'){

    [deskCalc divide: value]

    NSLog(@"%.6f", [deskCalc accumulator])

    }

2,如果加了括号,则没能在+-*/时候打印


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11162840.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-14
下一篇 2023-05-14

发表评论

登录后才能评论

评论列表(0条)

保存