在Objective-C中,为什么argv []被声明为const:
int main(int argc, const char *argv[]) { }
Run Code Online (Sandbox Code Playgroud)
因为const表示value(char *)是不可变的,所以哪个参数是.
一旦程序参数传递给程序,它们的值就不应该是可修改的.
认为这数组作为的阵列const char *的,这反过来,是阵列char秒.
所以,假设您将字符串"hello world"作为参数传递给您的程序,argv看起来像这样:
{{'h', 'e', 'l', 'l', 'o', '\0'}, {'w', 'o', 'r', 'l', 'd', '\0'}}
Run Code Online (Sandbox Code Playgroud)