如果出现按ENTER键换行的现象肯定是C语言代码有异常,仔细查询错误。
例如:
#include <stdio.h>
void main ()
{
int a,b,c
printf("输入两个数:\n")
scanf("%d%d",&a,&b) //注意scanf里面的格式
c=a+b
printf("%d",c)
}
C语言中Enter的键值是:0x1c0d。键盘上的每一个键都有两个唯一的数值进行标志。为什么要用两个数值而不是一个数值呢?这是因为一个键可以被按下,也可以被释放。当一个键按下时,它们产生一个唯一的数值,当一个键被释放时,它也会产生一个唯一的数值,我们把这些数值都保存在一张表里面,到时候通过查表就可以知道是哪一个键被敲击,并且可以知道是它是被按下还是被释放了。这些数值在系统中被称为键盘扫描码
[编辑本段]扫描码大全
扫描码 键
0x011b ESC
0x3b00 F1
0x3c00 F2
0x3d00 F3
0x3e00 F4
0x3f00 F5
0x4000 F6
0x4100 F7
0x4200 F8
0x4300 F9
0x4400 F10
主键盘区:
0x2960 ~
0x0231 1
0x0332 2
0x0433 3
0x0534 4
0x0635 5
0x0736 6
0x0837 7
0x0938 8
0x0a39 9
0x0b30 0
0x0c2d -
0x0d3d =
0x2b5c \
0x0e08 退格键
0x0f09 Tab
0x1071 q
0x1177 w
0x1265 e
0x1372 r
0x1474 t
0x1579 y
0x1675 u
0x1769 i
0x186f o
0x1970 p
0x1a5b [
0x1b5d ]
0x1e61 a
0x1f73 s
0x2064 d
0x2166 f
0x2267 g
0x2368 h
0x246a j
0x256b k
0x266c l
0x273b
0x2827 '
0x1c0d 回车
0x2c7a z
0x2d78 x
0x2e63 c
0x2f76 v
0x3062 b
0x316e n
0x326d m
0x332c ,
0x342e .
0x352f /
0x3920 空格键
0xe05b 左Win
0xe05c 右Win
0xe05d Menu
右边数字键盘:
0x5200 Insert
0x4700 Home
0x4900 Page UP
0x5300 Delete
0x4f00 End
0x5100 PageDown
0x4800 上箭头
0x4b00 左箭头
0x5000 下箭头
0x4d00 右箭头
0x352f /
0x372a *
0x4a2d - (注意,这是数字键盘的)
0x4737 7
0x4838 8
0x4939 9
0x4b34 4
0x4c35 5
0x4d36 6
0x4e2b +
0x4f31 1
0x5032 2
0x5133 3
0x5230 0
0x532e Del
换行符和回车符的区别:
1、换行(\n)将当前位置移动到下一行开头。
2、回车(\r)将当前位置移动到本行开头。
Enter键按下后会执行\n\r,这样就是我们看到的一般意义的回车了。所以你用16进制文件查看方式看一个文本,就会在行尾发现"\n\r"Tab是制表符,就是"\t",作用是预留8个 字符的显示宽度,用于对齐。
在windows/dos系统中,我们通常说的回车,也就是键盘的enter键实际包含了回车换行。在这样的系统中,'\n'的作用不仅仅是换到下一行,而且换到了下一行的开头了。
扩展资料换行符(linebreak)是指一种计算机语言表达方式,它的作用是跳到下一个新行。在不同的语言中,代码也有所不同。例如:<br>、"\n"、"endl"等。
一般语句换行
使用\结尾作为换行标记
在编译时,\后面的换行符将被忽略,当做一行处理。比如宏定义时使用
#definemy_puts(x)printf("%s",\
x)
和写作
#definemy_puts(x)printf("%s",x)
是没区别的。
针对宏定义中换行,换行符\必不可少。针对执行语句的换行,我们同样可以使用\作为换行符,同事当一个语句过长时,直接换行,也并不会影响语句的编译
if(NULL!=input\
&&TRUE==input->state)
与
if(NULL!=input
&&TRUE==input->state)
相同,它们所表达的都是
if(NULL!=input&&TRUE==input->state)
参考资料来源:百度百科—换行符