c#-基础知识-数据类型&变量&常量&运算符

这几篇c#博客基本是菜鸟教程的读书笔记,适合有c++/java/python基础的朋友们(太过基础的东西我删掉了,有些小订正)

helloworld例子

  1. 新建c#空项目,添加类。类文件后缀是cs。行尾要加分号。
using System; // namespace declaration. 可能不止一个

namespace csharptest // namespace
{
    class HelloWorldApplication // 与 Java 不同的是,文件名可以不同于类的名称。
    {
        static void Main(String[] args) // 所有c#程序的入口点
        {
            Console.WriteLine("Hello world");
            Console.ReadKey(); // 针对VS.NET用户,指等待一个按键输入,避免闪退
        }
    }
}
  1. ide执行。我用的是vs2019,本专栏也都是基于vs2019+win10的。
  2. 如果用命令行编译:
csc XXX.cs

此时会出现exe。如果找不到csc命令,去环境变量-系统变量-设置Path,加的内容是:
C:\Windows\Microsoft.NET\Framework\v4.0.30319
(根据你自己系统的版本改)

标识符

必须以字母、下划线、@开头(@if是有效标识符),不能有奇怪符号,不能使用C#类库名称。

数据类型

值类型

在这里插入图片描述
定义举例

double d = 5673.74;
int i = 75;
float f = 53.01f;
bool b = true;

引用类型

内置的引用类型有:object、dynamic和string。
用户自定义的引用类型:class、interface和delegate。
当一个值类型转为对象类型时,称为装箱,反正为拆箱。

object obj;
obj = 100; // 装箱

dynamic的类型检查是运行时发生的。

dynamic d = 20;

string是object的派生类。

String str = "\hello";
String str = @"\hello"; // 这样会把转义字符\当作普通字符
其实等价于
String str = "\\hello";

@也可以任意换行,换行符、缩进空格都是计算在字符串长度之内的。感觉像python的r’’。

指针类型

指针类型类似c/c++中的指针,存储的是内存地址。

char* cptr;

类型转换

隐式转换:不会导致数据丢失的,默认的
显式转换:强制类型转换,需要加运算符并且会造成数据丢失

double d = 5673.74;
int i = (int)d; // 5673

内置的类型转换方法(这里菜鸟写的有点含糊了,我试了才发现理解错了)
// 这些限制挺多的,比如Double其实都没有ToSingle…
// 不过一般都可以ToString(),这些应该是String类型可用的
ToBoolean ToByte ToChar ToDateTime ToDecimal ToDouble ToInt16 ToInt32 ToInt64 ToSbyte
ToSingle(转换为小浮点数) ToString ToType ToUInt16 ToUInt32 ToUInt64

Console.WriteLine(d.ToString());

变量

int d = 3, f = 5;
// 接受用户输入
int num;
num = Convert.ToInt32(Console.ReadLine());

常量

定义:const int a = 0;

整数常量

0x或0X表示十六进制,0表示八进制,无前缀表示十进制。后缀:u表示unsigned,L表示long,大小写都可,后缀顺序不定。

浮点常量

这里菜鸟教程写得有误,下面这样是正确的。

314159E-5
.2e-5
210f

字符常量

\ ’ “” ? 都需要转义,也就是加
\ooo 1~3位八进制数
\xhh 十六进制

字符串常量

定义在“”或@""里

运算符

有++和–,逻辑运算符用&& || 和!,位运算符有& | ^ ~ << >>。
sizeof()和typeof()
在这里插入图片描述
总结:跟c++/python基本一致吧。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值