C里面的字符输入
C/C++ code:
#include<stdio.h>
void main()
{
unsigned int v,u;
char c1,c2;
scanf("%o,%o",&u,&v);
scanf("%c,%c",&c1,&c2);
printf("u=%o,v=%d\n",u,v);
printf("c1=%c,c2=%d\n",c1,c2);
}
比如我输入v,u的值为45,c1,c2我输入1,c1和c2得不到正确的结果。
如果在语句
C/C++ code:
scanf("%c,%c",&c1,&c2);
改为
C/C++ code:
scanf(" %c,%c",&c1,&c2);
注意:第一个%c前面有空格,就能得到正确的结果,为什么呢?
scanf的格式化字符串中为什么要',',你输入的时候有没有输入','
第一个scanf输入结束后回车还留在缓冲区里面,因此第二个scanf来到时直接从缓冲区里面取值给c1了,但如果加了空格——scanf(" %c,%c",&c1,&c2); 就表示缓冲区的值匹配后忽略,因此可以争取运行。
另外:如果想为c1和c2输入整数最好用%d ———— scanf("%d,%d",&c1,&c2);
也可以在两个scanf之间加函数清空缓冲区:fflush(stdin)
为什么在第一种的情况下C2的值为什么是-52呢?
相关问答:
在查询后将查询出来的值赋给各输入框
<c:if test="${not empty dataValue}">
fm.SAMPLING_DATE.value=" <c:out value='${dataValue.SAMPLING_DATE}'/ ......
以前在VC里面建一个工程,都只用一个 .c 文件,昨天在一个工程里用了两个 .c文件了,遇到问题了,请大家指点。比如:
File1.c Fil ......
编写程序detab, 将输入中的制表符替换成适当数目的空格,使空格充满到下一个制表符终止的地方。假设制表符终止位的位置是固定的,比如每隔n列就会出现一个制表符终止位。
------------------- ......
问个比较弱的问题。
用c开发,服务器和客户端的程序,通讯协议用http。
不知道怎么入手了,是不是socket编程?还是应该看哪些方面的技术
有现成的http库 拿来用
自己写socket麻烦死了
网上找点代 ......
int a ,b ,c ;
scanf("%c\n",&a);
scanf("%c\n",&b);
scanf("%c",&c); //和下面一行有什么区别?
//scanf("%c ......