Мой вопрос касается разыменования указателя char
Вот мой код -
#define MAX 10
char s[80]="Hello";
int main(){
char *stackValue;
stackValue=&s;//here I assined the address of s to stackValue
if(!stackValue){
printf("No place for Value");
exit(1);
}
else{
printf("\n%s",*stackValue);//This doesn't work with * before it
printf("\n%s",stackValue);//This works properly
}
return 0;
}
В приведенном выше коде я назначил адрес S[] для stackValue, и когда я печатаю *stackValue, он не работает,
Но если я напечатаю только 'stackValue', это сработает.
Когда я делаю то же самое с Integer
int main(){
int i=10, *a;
a=&i;
printf("%d",*a);//this gives the value
printf("%d",a)//this gives the address
return 0;
}
Печать указателя char и целочисленного указателя отличается. Когда я использую * в значении int, он дает значение, но выдает ошибку, когда я использую его в качестве указателя на символ.
Помоги мне?