初学c语言,问个问题,关于二进制和ASCII码的

97的二进制是01100001
a所对应的ascII码是97,所以a的二进制就也是01100001
那么计算机看到这个01100001,怎么知道对应的值是a还是97呢??

97和a存储的形式都是01100001, 然后打印时如果按照字符格式打印是字符a,如果按照十进制整数格式就打印出97(个人观点,不喜勿喷!)

根据定义的类型 ,举个栗子
int n=97;
printf("%c",n);输出a
printf("%d",n);输出97