访问Objective-C中的命令行参数

iPa*_*rJr 37 cocoa objective-c command-line-arguments

是否有完整的文档(该接口是目前在crt_externs.h)这个功能: _NSGetArgc_NSGetArgv 我不能让苹果网站这个功能上的任何文件.

Wev*_*vah 74

如果你需要做的就是在Cocoa中获取命令行参数,你可以这样做:

NSArray *arguments = [[NSProcessInfo processInfo] arguments];
Run Code Online (Sandbox Code Playgroud)

  • 谢谢,但这主要功能还可以吗?不是像_NSGetArgc和_NSGetArgv这样的程序中的任何地方都可以做到的. (2认同)
  • 是的——来自任何地方(我不确定是什么给了你这样的印象:这可能不太好?)。 (2认同)

MKr*_*ert 25

您还可以使用Greg MillerAlex Rozanski撰写NSUserDefaults的博客文章中的说明来访问命令行参数.

您基本上NSUserDefaults通过调用获取实例[NSUserDefaults standardUserDefaults],然后使用boolForKey:或等消息stringForKey:来访问值.

Apple官方文档可以在这里找到.


s73*_*v3r 7

由于这些函数以"_"为前缀,这通常表示它们是私有的,并不意味着您使用.如果需要获取命令行参数,更好的方法是查找NSProcessInfo.