个人中心
我的提问
我的回答
今日任务
我的设置
退出
文档资料
电脑网络
体育运动
医疗健康
游戏
社会民生
文化艺术
电子数码
娱乐休闲
商业理财
教育科学
生活
烦恼
资源共享
其它
歪果仁看中国
爱问日报
精选问答
爱问教育
爱问公益
爱问法律
getchar有一个int型的返回值.当程序调用getchar时.程序就等着用户按键.用户输入的字符被存放在键盘缓冲区中.直到用户按回车为止(回车字符也放在缓冲区中).getchar函数的返回值是用户输入的第一个字符的ASCII码,如出错返回-1,且将用户输入的字符回显到屏幕.如用户在按回车之前输入...
1个回答
getch()函数是接受键盘输入一个字符,但是不显示在屏幕上。这样你就可以做输入密码的程序了,而不让别人知道你的密码。
3个回答
函数名: getch 功 能: 从控制台无回显地取一个字符 函数名: getchar 功 能: 从stdin流中读字符
getch()的原型为 int _getch(); 所在的头文件为 在MSDN中是这样对getch()解释的: The _getch function reads a single character from the console without echoing. 简单地说就是从缓冲区读取一个...
应该是非正常退出吧.我遇到这样的问题的时,一般就是把system("pause");转移位置,然后看看最后放到哪个地方能够停下来(最后的一个地方),那么错误可能就在这附近.你试试看
4个回答
“13”对应的字符是CR,即回车的意思,这里是在捕捉用户有没有点击回车键。如果没有,那么输出一个“*”字符,然后把刚刚捕捉到的字符赋值给a数组的一个元素,之后数值指针下移一个单位。这段函数的意思是捕捉用户输入的键盘数据的ASCII玛值
玩日服岂不省事。
2个回答
你好,用 system("PAUSE"); 可以达到同样的目的, 而且还自动显示英文提示
-32相当于你键盘输入的第二个字符是ASC码为224的字符,0x0是0的16进制表示法,也就是ASC码为0的字符了。所以应该是如果输入的第二个字符是224或者0,那么等待获取第三个字符。有代码和结果表示图为证:
#include "stdio.h" #define abc printf main() { char a='a'; abc("%c", a); getch(); }
这三个函数的具体解释如下,请LZ参考: 1、getch(): 调用方式:int getch(void) getch()从控制台读取一个字符,但不把该字符显示在屏幕上,也就是不回显。 2、getche(): 调用方式:int getche(void) getchar()从控制台读取一个字符,把该字符显...
getch 函数 void 系统标识 我选 A#C
检测键盘是否有键按下。 如果有键按下,则返回对应键值;否则返回零。 kbhit不等待键盘按键。无论有无按键都会立即返回。
目前,PC机使用的PS/2键盘都默认采用第2套扫描码集.扫描码有两种不同的类型:“通码(make code)”和“断码(break code)”.当一个键被按下或持续按住时,键盘会将该键的通码发送给主机;而当一个键被释放时,键盘会将该键的断码发送给主机.根据键盘按键扫描码的不同,可将按键分为3类: ...
getch(); /*程序暂停运行,等待用户按任意键继续*/ closegraph(); /*关闭图形模式,返回文本模式*/
什么意思,不就应该是1么?
main前面加上#include试试~这个提示好像是因为输出文件的地址不对才出现的,重装下编译器或者设置下各个目录,设置方法为:OPTION->DI :[TC2/3所在目录]/includeLIB:[TC2/3所在目录]/liboutput输出目录请自己设置一个工作目录,以免混在一起。最后还提醒一点...
看不懂,你得先解释一下啊 13,8是干什么的
主要是内存的关系. 首先,格式必须要正确.再来,编程的时候用最基本的方法,不要异想天开乱写. %d%d,中间少了逗号,所以读取的时候对应了后面的逗号,而不是b.在内存里的46没有办法被读取. 后面两种的情况相同.因为你多了一个getch.内存里面的1546属于等待的状态.所以你即使没有逗号.也是15...
5个回答
可以输出一部分,因为有很大一部分是非可打印字符,比如回车、退格、响铃等是不可能屏幕输出的。
2.0就可以了,语法没错啊
#include "stdio.h" main() { int a , d , s; scanf("%d %d",&a,&b); for(s=a;s<=d;s++) { a=a*d;} printf("%d",a); getch(); }
ab先合计再赋值? 逻辑错了吧,ab根本没有初始化赋值就进行计算?
按ALT+F5可以直接看到结果。 或者你想直接看结果的话,应该将getch()放在return 0上面;因为return 0后函数就已经结束了,不会再运行下面的程序了。
结果是 "abcd". 但是这样写代码是标准的错误范例。 因为char a, 只有一个 char的空间。要放下"abcd"需要5个char的空间。 如果这样写,'bcd\0'四个字符会战用其他的堆栈位置,如果这些位置在堆栈中是被其他变量用到的话就有可能会使程序产生不可预期的结果。
for(a=n+i-1;a C C/C++ 2个回答
switch语句要break,不然会一直顺序运行下去的,所以,你的代码要改为:main(){ints;scanf("%d",&s);switch(1234!=s){case1234!=1234:printf("YES");break; ("no");}getch();}就可以了~
chr(10)和chr(13),前者是换行,后者是。 在有些设置中。回车是移到行首,换行是换到下一行。
LZ可以这样理解: s和t是两个字符指针,均指向"1234"这个字符串首地址。 while循环条件是*t,得到的是字符串的值,是非零值,所以可以循环4次,当指向字符串尾时,是字符'\0',为零值,所以结束循环, 在循环体内的printf函数,输出的是两个指针地址的差值,t每次进行++自增1运算,而s...
#incudeint main() { int a; scanf("%d",&a); if (a%3 != 0) { printf("bu neng bei 3 zheng chu "); } getch(); }