main でポインターの配列を変更する方法は知っていますが、関数で変更する必要がある場合に行う方法がわかりません。** の間のコードは、関数を使用せずにメインで行う方法です。ポインターのポインターの配列を出力する方法を知っています。私の質問は、これらの行 ** を function() に移動したいとします。何を変更する必要がありますか?
コード:
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
void function(char *array[], int size);
void function_print(char *array[], int size);
int main()
{
char *array[] = {0};
char word[20];
**scanf("%s", word);
int len = strlen(word) + 1;
array[size] = (char *)malloc(sizeof(len));
strlcpy(array[size], word, sizeof(array[size]));**
function(array, 0);
return 0;
}
void function(char *array[], int size)
{
}
void function_print(char *array[], int size)
{
for(int x = 0; x < size; x ++)
{
printf("%s", *array);
(array)++;
}
}
~
~