/* Note:Your choice is C IDE */
#include “stdio.h”
main()
{
int intval,charval;
scanf(“%d”,&intval);
charval=getchar();
printf(“integer: %d\ncharacter: %c\n”,intval,charval);
}
>> 本文固定链接: http://www.vcgood.com/archives/2428
>> 转载请注明: xiedonghao 2008年06月05日 于 C语言帝国 发表
int intval,charval;你都定义成int类型了
charval=getchar(); 为啥要让charval接受一个从键盘输入的字符呢!!!!!!!!
[QUOTE=redmay1986]
int intval,charval;你都定义成int类型了
charval=getchar(); 为啥要让charval接受一个从键盘输入的字符呢!!!!!!!!
[/QUOTE] 支持一下
晕死!!!!
[QUOTE=redmay1986]
int intval,charval;你都定义成int类型了
charval=getchar(); 为啥要让charval接受一个从键盘输入的字符呢!!!!!!!!
[/QUOTE]
/* Note:Your choice is C IDE */
#include “stdio.h”
main()
{
int intval,charval;
scanf(“%d”,&intval);
while(getchar()!=’\n’)
continue;
charval=getchar();
printf(“integer: %d\ncharacter: %c\n”,intval,charval);
}
本意是先输入一个数字再输入一个字母。
可是发现当输入一个一个数字再敲会车时程序就结束了。
原因在于scanf不接受‘\n’ getchar接受的正好是上一个scanf剩下的‘\n’;
int型完全可以接受一个char型的值。
_CRTIMP int __cdecl getchar(void);
这是原型,返回的就是余个int型的值。