Can';t在C中计算指针/数组/字符串
我是C新手,不知道如何处理此数组:Can';t在C中计算指针/数组/字符串,c,arrays,pointers,C,Arrays,Pointers,我是C新手,不知道如何处理此数组: char *args[MAX_LINE/2 + 1]; 这句话到底是什么意思?它是指向字符数组的指针吗? 分配给它的任务是用多个字符串标记填充这个数组,但我不明白一个字符指针如何存储整个字符串 char *args[MAX_LINE/2 + 1]; args是指向大小为MAX\u LINE/2+1的字符的指针数组。每个元素都是一个字符*,即每个元素都可以是一个字符串。但您必须初始化它们(即,将它们指向有效的位置)。例如,要从stdin读取: args[0]
char *args[MAX_LINE/2 + 1];
这句话到底是什么意思?它是指向字符数组的指针吗?
分配给它的任务是用多个字符串标记填充这个数组,但我不明白一个字符指针如何存储整个字符串
char *args[MAX_LINE/2 + 1];
args
是指向大小为MAX\u LINE/2+1
的字符的指针数组。每个元素都是一个字符*
,即每个元素都可以是一个字符串。但您必须初始化它们(即,将它们指向有效的位置)。例如,要从stdin读取:
args[0] = malloc(some_size);
/* read a string from standard input */
fgets(args[0], some_size, stdin);
args
是指向大小为MAX\u LINE/2+1
的字符的指针数组。每个元素都是一个字符*
,即每个元素都可以是一个字符串。但您必须初始化它们(即,将它们指向有效的位置)。例如,要从stdin读取:
args[0] = malloc(some_size);
/* read a string from standard input */
fgets(args[0], some_size, stdin);
这基本上是一个指针数组。每个指针都指向一个包含字符的位置
请查看此处以了解有关如何处理它的更多详细信息 这基本上是一个指针数组。每个指针都指向一个包含字符的位置
请查看此处以了解有关如何处理它的更多详细信息 它是一个字符数组,大小为MAX_LINE/2+1,例如
50/2+1
->26
。它是一个字符指针数组。大小为MAX\u-LINE/2+1
它是一个字符数组,大小为MAX\u-LINE/2+1,例如50/2+1
->26
。它是一个字符指针数组。大小为MAX\u LINE/2+1
。。。可以用作字符串数组;我们必须查看输入的值。如何将字符串存储到此数组中?@user3373372:使用malloc
分配每个元素,并将它们复制到中,将它们指向其他字符串,等等。但是,您可以在C中填充任何字符串。添加了example@Ed所以我尝试了args[0]=malloc(70);但是编译器说“内置函数-malloc-的不兼容隐式声明”。我遗漏了什么吗?@user3373372:#include
。您需要包含所使用函数的声明。对于fgets
,您需要stdio.h
。都在文档中。。。。可以用作字符串数组;我们必须查看输入的值。如何将字符串存储到此数组中?@user3373372:使用malloc
分配每个元素,并将它们复制到中,将它们指向其他字符串,等等。但是,您可以在C中填充任何字符串。添加了example@Ed所以我尝试了args[0]=malloc(70);但是编译器说“内置函数-malloc-的不兼容隐式声明”。我遗漏了什么吗?@user3373372:#include
。您需要包含所使用函数的声明。对于fgets
,您需要stdio.h
。这些都在文档中。