输入一个数字字符,将其转化为数字并输出(用指针实现) 如何改正

问题遇到的现象和发生背景
问题相关代码,请勿粘贴截图

#include <stdio.h>
int main()
{
char c,*pc;
int d,*pd;
pc=c
;
pd=d
;
*pc=getchar(); //输入数字字符
*pd=*pc-'0'
; //转化为数字
printf("%d\n",*pd
); //输出数字
return 0;
}

运行结果及报错内容
我的解答思路和尝试过的方法
我想要达到的结果

应该加上取地址符

#include <stdio.h>
int main()
{
    char a,*pc=&a;
    int b,*pd=&b;
    *pc=getchar(); //输入数字字符
    *pd=*pc-'0'; //转化为数字
    printf("%d\n",*pd); //输出数字
    return 0;
}