c语言的问题,这样写对吗?

来源:百度知道 编辑:UC知道 时间:2024/06/19 15:22:51
char *p,ch
p=&ch;
scanf(“%c,&p”)
在这里scanf(“%c,&p”) p不是已经是地址了吗?对p赋值不用在加上取地址符了吧?

#include <stdio.h>
int main()
{
char c,*p;
p=&c;
scanf("%c",p);
printf("%c\n",*p);
}
这样写是可以的。
和#include <stdio.h>
int main()
{
char c;
scanf("%c",&c);
printf("%c\n",c);
}
效果一样的。
你的程序scanf("%c",p);才是对的,p是变量ch的地址

#include<stdio.h>
main()
{
char *p,ch;
p=&ch;
scanf("%c",&p);
printf("%c",p);
}
要的