我需要能够将此 char* 数组 [SIZE] 转换为 char* 示例。我怎样才能做到这一点? 我的问题是我需要能够像时尚的指针一样单独管理数组的内容 例如,如果我有:
array[0] = "dog"
array[1] = "cat"
array[2] = "one"
我希望能够通过递增指针的值来访问这些元素中的每一个 像这样
example = "dog"
example++ = "cat"
example++ = "one"
提前致谢!!
我的主要问题是我需要用一个指针指向所有这些值,这样当我打印我的指针时,我的指针就会有这样的东西:
printf("example: %s\n", example);
output: example: dog cat one
最佳答案
你可以简单地做:
char **example=array;
当然它不是 char *
(您在第一行中要求的),但它确实允许您稍后要求的功能。
--- 编辑 --- 此方法无法满足您的 printf 要求。在 C++ 中,您可以构建一些满足这两个要求的奇怪对象(但使用 C++ 流,而不是 printf),但您应该解释“大局”,这整个事情闻起来有很多 XY 问题。
关于c - 将指针数组转换为数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19773797/