我创建了一个函数,它接受一个指向 C-String 数组中第一个元素的指针。这是数组,以及我是如何制作它的:
char element1[60] = "ubunz";
char element2[60] = "uasdasffdnz";
char* array[10] = {element1,element2};
然后我创建了一个指向数组中第一个元素的指针:
char *pointertoarray = &array[0];
然后我将指针传递给我创建的函数:
void printoutarray(char *pointertoarray){
int i = 0;
while (i < 2){
printf("\n Element is: %s \n", *pointertoarray);
pointertoarray = pointertoarray + 1;
i = i+1;
}
}
当我运行程序时,数组永远不会打印出来。
我以前在 C++ 中完成过这个程序,但我使用了 STL 字符串类型,并创建了一个指向字符串数组的指针。我认为我的问题在于我在 C 中创建字符串数组并创建指向它的指针的方式。