具有指向字符串的指针数组的地址算术

时间:2018-06-28 18:34:27

标签: c pointers pointer-arithmetic

我可以使用指针在C中创建字符串数组

char *array[] = {"string1", "string2", "string3"};

要打印任何字符串时,必须指定元素的索引。

char *array[] = {"string1", "string2", "string3"};
printf("%s", array[1]);

为什么不能使用地址算法在字符串之间进行切换?

char *array[] = {"string1", "string2", "string3"};
printf("%s", *++array);

顺便说一句“ C编程语言第二版” Kernighan和Ritchie 给出了带有参数向量的示例。

int main(int argc, char *argv[])
{
   while (--argc > 0)
       printf("%s ", *++argv);

   return 0;
}

它适用于参数向量,但不适用于我的数组。为什么?

0 个答案:

没有答案