我有一个愚蠢的问题。所以,我现在正在学习用C语言编程,我想知道是否可以用C语言创建Iphone应用程序。我在网上搜索并得到一个印象,所有Iphone应用程序都是用Objective-C编写的,这是真的吗? 非常感谢您的帮助。
答案 0 :(得分:3)
你可以在C中做任何事情,你也可以用Objective-C做。但是,Apple的大多数Cocoa Touch库只能通过Objective-C调用获得。
另外,不仅Objective-C本身就是一个相当不错的语言,Cocoa Touch提供了这么多有用的API调用,你不会错过它们。当你深入了解Apple为你提供的许多方法时,这真是令人难以置信 - 它是惊人的。即使只是NSString *操作也令人印象深刻。
请注意,由于Toll-Free Bridging,您可以(有时必须)仍然使用普通C进行许多操作。 CocoaTouch中使用的许多NS___
类(在Obj-C中使用)与Core Foundation方法和类型CF___
(在C中使用)直接兼容。
此外,如果没有别的,一旦你开始使用Objective-C方法命名系统(带有命名参数),你就不能回去了。 :)
答案 1 :(得分:2)
你可以在技术上用C编写一个应用程序,是的,但为了与Apple提供的框架接口,你需要在Objective-C中编写你的应用程序,这根本不难理解,非常值得你花时间。
答案 2 :(得分:2)
如果您只是想学习C,那么没有理由编写iPhone应用程序。只需在Mac上编写一些命令行工具,就能让你牢牢掌握C语言。
但是,如果您的目标是最终编写iOS或Mac OS X应用程序,则无论如何都需要了解Objective-C。事实上,现代Objective-C的大部分内容都是为了隐藏C的疯狂。
由于Objective-C是C的超集,因此首先关注Objective-C将为您提供编写iOS或Mac应用程序的基础,同时还教您C语言的基础知识。如果您想更深入地学习C语言,你将有这样做的基础。
答案 3 :(得分:1)
是的,你可以。 Objective-C实际上只是一种在C程序中组织代码和数据的方法。你应该学习一下objective-c语法,一旦你知道C只会花一点时间,因为没有太多的东西。但是学习C是学习如何制作iOS应用程序的一个很好的开始。
答案 4 :(得分:1)
最终将C和Objective-C代码编译成机器代码;所以这当然是可能的。
不幸的是,据我所知,官方API在Objective-C中,所以很可能很少更难以与API接口,但如果你做到了,我会说试一试。
在这里我可以阅读的内容似乎完全可能: http://www.iphonedevsdk.com/forum/iphone-sdk-development/52352-ansi-c-objective-c.html
虽然他们似乎使用Objective-C与库进行交互。
但这肯定不是不可能的。祝你好运!
答案 5 :(得分:0)
iOS的开发环境是使用Xcode IDE和Cocoa-Touch框架在Objective-C中编程。它是开发本机iPhone应用程序的强大而快速的方法。从技术上讲,你可以在iOS中编译C代码,但为什么要这样做呢?
Objective-C可能看起来很有趣来自C背景,但实际上很容易让你习惯它(实际上我发现它非常自然)并且Xcode IDE为你提供了很多代码完成等方面的支持。 / p>