如何将数组的元素初始化为 NULL。例如,如果我有 char *array[10]; 我希望最后一个元素为 NULL,以便我可以将此数组传递给 execv
问问题
79702 次
4 回答
19
char*
初始化所有NULL
s的数组:
char* array[10] = { NULL }; /* The remaining elements are implicitly NULL. */
如果您想为 提供初始元素execv()
:
char* array[10] = { "/usr/bin/ls", "-l" }; /* Again, remaining elements NULL. */
或者如果您希望从数组声明中省略维度:
char* array[] = { "/usr/bin/ls", "-l", NULL };
于 2012-11-08T16:32:34.303 回答
1
NULL
只不过是:#define NULL (void*) 0 UL
你NULL
所说的是nul
性格'\0'
查看man execv
页面或其他执行进程..它实际上需要可变数量的参数
于 2012-11-08T16:30:24.697 回答
1
execv 接受一个数组char *
,而不是一个数组char
。
char *const parms[] = {"abc", "-a", "pqr", NULL};
于 2012-11-08T16:30:34.090 回答
-3
如果您的数组是 object,String,Char 如果您声明它将自动为 null
例如。
Oject [] myarray=new Object[10];
在数组的任何地方都为空
于 2012-11-08T16:47:53.130 回答