我想將初始化的字符指針數組傳遞給函數。我似乎無法弄清楚爲什麼函數只打印出數組中每個元素的數字。將字符指針數組傳遞到函數
有誰知道我怎麼能打印每個字符串元素從傳入的指針數組?如果你要打印的數組的內容
#include <stdio.h>
#include <string.h>
#include <ctype.h>
#include <stdlib.h>
void sort(char *);
int main()
{
char *states[4] = {"Florida", "Oregon", "California", "Georgia"};
sort(*states);
return 0;
}
void sort(char *states)
{
int x;
for (x = 0; x < 4; x++) {
printf("\nState: %d\n", states[x]); //only this will compile
//printf("\nState: %s\n", states[x]); //need to print this.
}
}
您將一個指向佛羅里達的指針傳遞給該函數,然後打印出對應於該字符串前四個字母的數字。那不是你想要的嗎? –
'sort(states);'和'void sort(char * states [])' – Rabbid76
好的,我明白了。所以我不接受指針數組。 – Andrew