变量:
•如何申明变量:
变量就是用来存储各种不同类型数值的一个容器,不同的变量类型可以存储不同类型的值
固定写法: 变量类型 变量名 = 初始值;
变量类型(14种) 变量名(自己定义 英文/拼音) = 初始值(一定和变量类型是统一的);
多个相同类型变量声明: 变量类型 变量名 = 初始值,变量名 = 初始值,变量名 = 初始值...;
-
有符号整型变量 (4 种,存正负整数和 0)
◦ sbyte:1 字节、8 位,范围 -128 ~ 127
◦ short:2 字节、16 位,范围 -32768 ~ 32767
◦ int:4 字节、32 位,范围 -21 亿 ~ 21 亿多(-2147483648 ~ 2147483647)
◦ long:8 字节、64 位,范围 -9 百万兆 ~ 9 百万兆(更宽泛大整数)
-
无符号整型变量(4 种,存正整数和 0 )
◦ byte:1 字节、8 位,范围 0 ~ 255
◦ ushort:2 字节、16 位,范围 0 ~ 65535
◦ uint:4 字节、32 位,范围 0 ~ 42 亿多(0 ~ 4294967295)
◦ ulong:8 字节、64 位,范围 0 ~ 18 百万兆(极大正整数)
-
浮点数(小数,3 种 )
◦ float:4 字节、32 位,存 7 ~ 8 位有效数字;数字加 f/F 标识(因 C# 中无后缀小数默认 double ,需加后缀表明是 float ),有四舍五入,默认值为0.0F
◦ double:8 字节、64 位,存 15 ~ 17 位有效数字,默认小数类型,四舍五入,默认值为0.0D
◦ decimal:16 字节、128 位,存 27 ~ 28 位有效数字,数字加 M/m 标识,不建议普通场景用,默认值为0.0M
-
特殊情况(3 种 )
◦ bool:1 字节、8 位,存 true(真)、默认是false(假),表真假判断
◦ char:2 字节、16 位,存单个字符有且只有一个不能为空,=后加' '如 'a',默认值为'\0'
◦ string:字符串类型,存多个字符,长度可变(无法直接获取占内存大小,因长度动态变化 )=后加" " @" " $" "
•变量的存储空间(内存中):
• 1 byte(字节) = 8 bit(位)
• 1 KB = 1024 byte
• 1 MB = 1024 KB
• 1 GB = 1024 MB
• 1 TB = 1024 GB
•变量的本质:
二进制: int n1 = 0B101 ; ---->0B/0b
计算机所有数据本质是二进制(由 0 和 1 组成 ),1 bit (1 位)就存 1 个二进制数,非 0 即 1 。
| 十进制数 | 二进制数 | 计算逻辑(二进制转十进制验证 ) |
|---|---|---|
| 0 | 0 | 0 |
| 1 | 1 | 2^0 = 1 |
| 2 | 10 | 0 + 2^1 = 2 |
| 3 | 11 | 2^0 + 2^1 = 3 |
| 4 | 100 | 0 + 0 + 2^2 = 4 |
| 5 | 101 | 2^0 + 0 + 2^2 = 5 |
| 6 | 110 | 0 + 2^1 + 2^2 = 6 |
| 7 | 111 | 2^0 + 2^1 + 2^2 = 7 |
| 8 | 1000 | 0 + 0 + 0 + 2^3 = 8 |
| 9 | 1001 | 2^0 + 0 + 0 + 2^3 = 9 |
| 10 | 1010 | 0 + 2^1 + 0 + 2^3 = 10 |
十进制转二进制算法:
除2取余法
二进制转十进制算法:
按位求2的幂相加
八进制:
八进制数是逢8进位的进位制,0-7是基本算符
0 , 1 ,2 , 3, 4, 5, 6, 7, 10 , 11, 12, 13, 14, 15, 16, 17, 20, 21........
十进制转八进制算法:
除8取余法
八进制转十进制算法:
按位求8的幂相加
十六进制:
C#中也可以使用十六进制对数据进行表达,逢16进位,所以需要16个个位数字 表达方法。
0 , 1 ,2 , 3, 4, 5, 6, 7, 8, 9, A(10) , B(11), C(12), D(13) , E(14), F(15), 10 , 11 ,12 , 13, 14, 15, 16, 17, 18, 19, 1A(20) , 1B(21), 1C(22), 1D(23) , 1E(24), 1F(25)........
十六进制: int n2 = 0X19 ;---->0X/0x
十进制转十六进制算法:
除16取余法
十六进制转十进制算法:
按位求16的幂相加
补码:
规律总结(针对负数)
1.写出绝对值的二进制原码
2.绝对值按位取反
3.加上1
规律总结(针对正数)
与原码一致
•变量命名规则:
◦ 不能重名
◦ 不能数字开头
◦ 不能使用程序关键字命名(想用的话前面加@)
◦ 不能有特殊符号(下划线除外 )
•常用命名规则:
◦ 驼峰命名法:首字母小写,之后单词首字母大写(用于变量 )
◦ 帕斯卡命名法:所有单词首字母都大写(用于函数、类 )
•获取类型或变量的确切大小:sizeof()
using System;
namespace c.biancheng.net{
class Program {
static void Main(string[] args) {
Console.WriteLine("int 类型的大小为: {0}", sizeof(int));//4 结果为字节
Console.ReadLine();
}
}
}
*常量 :
•常量的申明:关键字 const
◦ 固定写法:const 变量类型 变量名 = 初始值;
•常量特点:
必须初始化、不能被修改
作用:是申明一些常用不变的变量
*转义字符:
-
基础说明:是字符串一部分,表特殊含义的字符(如单引号、空格 )
固定写法: \字符 ,不同 \ + 字符组合表示不同含义
-
常见转义字符
◦ 单引号\ ' 、双引号\ " 、换行 \n 、斜杠 \\
-
不常见转义字符*-------
◦ 制表符 \t(大小和为8或8的倍数) 、光标退格 \b 、空字符 \0 、响铃 \a
-
取消转义字符(@ 符号 ):申明时加 @ ,效果和打印前加 @ 一致 ,可简化转义处理
//单引号 \' string str = "\'哈哈哈\'";Console.WriteLine(str);//'哈哈哈' //双引号 \" str = "\"哈哈哈\"";Console.WriteLine(str);//"哈哈哈" //换行 \n str = "12345\n6789";Console.WriteLine(str);//12345 //6789 //斜杠 \\ str = "哈\\哈哈";Console.WriteLine(str);//哈\哈哈 //制表符 \t str = "哈\t哈哈";Console.WriteLine(str);//哈 哈哈 //光标退格 \b str = "123\b123";Console.WriteLine(str);//12123 //空字符 \0 str = "1234\0123";Console.WriteLine(str);//1234123 //响铃 \a str = "\a";Console.WriteLine(str);
3452

被折叠的 条评论
为什么被折叠?



