C++中的输入输出

 

注:因为系统会自动追加字符结束符\0 一同存储,因此VS中的安全函数scanf_s最大写入为9.

 

注:c中字符串之间不能直接赋值,但是结构类型的数据是可以直接赋值的。

 1 #include <stdio.h>    //给printf用
 2 #include <stdlib.h>   //给system用
 3 
 4 #define PI 3.1415926  /*宏定义是预处理命令,不是语句,因此结尾不用分号。
 5 宏定义一般用在一个常量反复出现在程序中时,宏定义好处:
 6 1、方便修改维护,如果需要修改此常量,仅需修改宏即可。
 7 2、增加程序的可读性
 8 注意:它仅仅就是替换,不做任何计算等。
 9 
10 const常量有类似功能,但是const常量有数据类型。
11 */
12 int main1()
13 {
14     char a = 'A', b = 'D',c;/*单引号引起的代表此字符的Asiic码对应数值,
15                             A = 65,D= 68, ? = 133 */
16     c = a + b;
17     printf("%c\n",c);  //%c代表单个字符
18     system("pause");
19     return 0;
20 
21 }
22 int main2()
23 {
24     char a = 'A', b = 'D', c;/*单引号引的代表此字符的Asiic码对应数值,
25                              A = 65,D= 68, ? = 133 */
26     c = a + b;
27     printf("%c\n", c);  //%c代表单个字符
28     system("pause");
29     return 0;
30 
31 }
32 /*
33 c语言中的数据类型     关键字       长度      位数     范围         
34 字符型:                char       1Byte  =  8bit     -128—127
35 整数:                  int         4Byte  =  32bit   -2^31—2^31-1
36 浮点型                  float      4Byte  =  32bit   _+(10^-38—10^38)      显然一般的数用float单精度足够
37 双精度                    double       8Byte  =  64bit   _+(10^-380—10^380)    99.9999%的可能你不需要用它!
38 
39 unsigned 指的是将第一位的符号位也视为数值位,即没有负数区间,但正数区间增大一倍。
40 signed就很显然了,第一位符号位,区间上限比unsigned变小一半。
41 */
42 /*
43 为什么1Byte = 8位?
44 这个要从美国人的所有符号说起,ASIIC码中,英文中所有符号、数字加起来不超过128,也就是7位,加上符号位8位就够了。因此用了8位。
45 但是汉字8万多,显然不行,因此有了其他编码如utf-8
46 
47 网速说的10M是通信中的概念,单位实际是Mbit/s
48 因此10Mbit/s = 10/8 MByte/s  = 12.5M/s
49 */
50 
51 /*
52 
53 数据类型:十进制   八进制(0开头)   十六进制(0x开头)
54            65       0 101     0x 41     
55 
56         3255U  (无符号类型 十进制)
57         0x41U  (无符号类型 十六进制)
58     3.12e-2  用  e 表示 10^ 
59 
60     字符常量:指用一个单引号引起来的一个字符。字符常量本质上就是十进制数。
61     字符串常量:。。。。。。双引号。。。。。
62     存储字符串时,系统会识别引号结束符,然后自动给其结尾加上   NUll串结束标识符
63     如"china"实际存储时是用6个字节;   c    h    i    n    a  NULL
64     对应Asiic码中的存储形式为:           67  104  105  112  97   \0    
65 
66     转义符:双引号 反斜杠已经有具体意义了,双引号代表字符的开始和结束。
67     要打单引号:\'
68     要打双引号:\"
69     要打反斜杠:\\
70     
71 
72     因为存储的最小单位是字节,因此画的存储分配内存示意图中最小的矩形框代表1个字节
73     变量的实质是一块内存空间
74     如x = 25
75     y = x-- ;后置运算符减号表示,先赋值给y,再把x减少1。  y = 25
76     y = --x   ;前置运算符减号表示,先把x减少1,再赋值给y。 y = 24 
77 
78     类型强制转换:  eg:    int x = 10;
79                             float y;
80                             y = x  ;(会警告!)
81 
82                     改动: y  = (float)x;   安全!
83 
84 */

 

posted @ 2019-12-07 17:41  Parallax  阅读(233)  评论(0编辑  收藏  举报