请教在什么情况下用char * i呢

请问在什么情况下用char * i呢?
char   i   和   char   *   i的区别,什么情况下用char   *   i?可以用其他的代替它吗?

------解决方案--------------------
指针和变量的区别!
char i : i是一个字符
char * i: i是一个指向字符的指针, 还可能是一个指向字符串的指针.
------解决方案--------------------
字符串只能用指针了,char *i;
------解决方案--------------------
字符串是按照数组来存的吧,char *i = "adsdsada ";
是吧第一个字符的地址给i,就是说i是字符串的首地址。
------解决方案--------------------
void text(char *p)
{
printf( "The string is: %s\n ",p);
}

int main()
{
char *y = "alfd;jadsfajsd;fjasdflajsdlf;kjads;fljas;dfjalsd;fj ";
text(y);
return 0;
}

采用指针的方式在函数调用时,参数拷贝的只是指针,而不是整个字符串。这样的方式非常灵活操作字符串。


------解决方案--------------------
char *类型主要用来操作字符串,它实质上保存的是字符串第一个字符的地址,你可以对比数组来理解它,因为字符串在内存中实际上就是字符数组char [],就像int a[10];int *p=a一样的,用p可以操作数组内容。