C#学习之路-常量

news2024/11/15 21:30:14

C# 常量

常量是固定值,程序执行期间不会改变。常量可以是任何基本数据类型,比如整数常量、浮点常量、字符常量或者字符串常量,还有枚举常量。

常量可以被当作常规的变量,只是它们的值在定义后不能被修改。

整数常量

整数常量可以是十进制、八进制或十六进制的常量。前缀指定基数:0x 或 0X 表示十六进制,0 表示八进制,没有前缀则表示十进制。

整数常量也可以有后缀,可以是 U 和 L 的组合,其中,U 和 L 分别表示 unsigned 和 long。后缀可以是大写或者小写,多个后缀以任意顺序进行组合。

212         /* 合法 */
215u        /* 合法 */
0xFeeL      /* 合法 */
078         /* 非法:8 不是一个八进制数字 */
032UU       /* 非法:不能重复后缀 */
85         /* 十进制 */
0213       /* 八进制 */
0x4b       /* 十六进制 */
30         /* int */
30u        /* 无符号 int */
30l        /* long */
30ul       /* 无符号 long */

 浮点常量

一个浮点常量是由整数部分、小数点、小数部分和指数部分组成。您可以使用小数形式或者指数形式来表示浮点常量。

3.14159       /* 合法 */
314159E-5L    /* 合法 */
510E          /* 非法:不完全指数 */
210f          /* 非法:没有小数或指数 */
.e55          /* 非法:缺少整数或小数 */

 使用浮点形式表示时,必须包含小数点、指数或同时包含两者。使用指数形式表示时,必须包含整数部分、小数部分或同时包含两者。有符号的指数是用 e 或 E 表示的。

字符常量

字符常量是括在单引号里,例如,'x',且可存储在一个简单的字符类型变量中。一个字符常量可以是一个普通字符(例如 'x')、一个转义序列(例如 '\t')或者一个通用字符(例如 '\u02C0')。

在 C# 中有一些特定的字符,当它们的前面带有反斜杠时有特殊的意义,可用于表示换行符(\n)或制表符 tab(\t)。在这里,列出一些转义序列码:

转义序列含义
\\\ 字符
\'' 字符
\"" 字符
\?? 字符
\aAlert 或 bell
\b退格键(Backspace)
\f换页符(Form feed)
\n换行符(Newline)
\r回车
\t水平制表符 tab
\v垂直制表符 tab
\ooo一到三位的八进制数
\xhh . . .一个或多个数字的十六进制数

 字符串常量

字符串常量是括在双引号 "" 里,或者是括在 @"" 里。字符串常量包含的字符与字符常量相似,可以是:普通字符、转义序列和通用字符

使用字符串常量时,可以把一个很长的行拆成多个行,可以使用空格分隔各个部分。

string a = "hello, world";                  // hello, world
string b = @"hello, world";               // hello, world
string c = "hello \t world";               // hello     world
string d = @"hello \t world";               // hello \t world
string e = "Joe said \"Hello\" to me";      // Joe said "Hello" to me
string f = @"Joe said ""Hello"" to me";   // Joe said "Hello" to me
string g = "\\\\server\\share\\file.txt";   // \\server\share\file.txt
string h = @"\\server\share\file.txt";      // \\server\share\file.txt
string i = "one\r\ntwo\r\nthree";
string j = @"one
two
three";

定义常量

常量是使用 const 关键字来定义的 。定义一个常量的语法如下:

const <data_type> <constant_name> = value;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConstTest
{
    internal class SampleClass
    {
        public int x;
        public int y;
        public const int c1 = 5;
        public const int c2 = c1 + 5;

        // 和java一样的 构造函数传参
        public SampleClass(int p1, int p2)
        {
            x = p1;
            y = p2;
        }
    }

    class Test
    {
        static void Main(string[] args)
        {
            SampleClass mC = new SampleClass(11, 22);
            Console.WriteLine("x = {0}, y = {1}", mC.x, mC.y);
            Console.WriteLine("c1 = {0}, c2 = {1}",
                              SampleClass.c1, SampleClass.c2);
            Console.ReadKey();
        }
    }

}

 

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/732029.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Mybatis-Plus查询

Mybatis-Plus Mybatis-Plus条件查询的书写方法 1.条件查询 直接new QueryQuery<>创建对象&#xff0c;然后再wrappee.eq(“数据库列表”,“匹配值”)创建条件就可以。 其中&#xff0c;基本查询&#xff1a;eq表示相等&#xff1b;gt表示大于&#xff1b;lt表示小于&a…

[Vue3]学习笔记-provide 与 inject

作用&#xff1a;实现祖与后代组件间通信 套路&#xff1a;父组件有一个 provide 选项来提供数据&#xff0c;后代组件有一个 inject 选项来开始使用这些数据 具体写法&#xff1a; 祖组件中&#xff1a; setup(){......let car reactive({name:奔驰,price:40万})provide(…

Leetcode刷题(Week1)——宽(深)度优先遍历专题

刷题时间&#xff1a; 2019/04/04 – 2019/04/07 主播&#xff1a;yxc(闫雪灿) 视频链接&#xff1a; https://www.bilibili.com/video/av32546525?fromsearch&seid14001345623296049881 题号题目链接127Word Ladderhttps://leetcode.com/problems/word-ladder/131Palind…

Integration Objects OPC 所有产品Crack

OPC产品 OPC UA 升级到 OPC UA 以提高互操作性和安全性。 OPC 隧道 无需 DCOM 即可实现安全可靠的连接。 OPC 数据归档 将 OPC 数据存储到标准数据库或 CSV 文件中。 OPC 服务器 将任何通信协议转换为OPC标准。 OPC 客户端 读取、写入和传输您的 OPC 数据。 OPC 服务器工具…

四十五、时间/空间复杂度分析

算法主要内容 一、时间复杂度分析1、由数据范围反推算法复杂度以及算法内容2、如何分析代码复杂度&#xff08;1&#xff09;看循环&#xff08;2&#xff09;看递归&#xff08;3&#xff09;一些看似为O(n^2)&#xff0c;但实际为O(n)&#xff08;4&#xff09;数据结构&…

HPM6750系列--第五篇 使用Segger Embedded Studio for RISC-V开发环境

一、目的 之前的博文中《HPM6750系列--第四篇 搭建Visual Studio Code开发调试环境》我们介绍了如何使用visual studio code进行开发调试&#xff0c;但是用起来总缺少点感觉&#xff0c;那么有没有更加友好一些的IDE用来开发呢&#xff1f; 本篇主要介绍如何使用Embedded Stud…

Stable Diffusion 模型界面介绍

Stable Diffusion 模型界面介绍 界面1 图1 Stable Diffusion 模型界面1 ①&#xff1a;选择的模型&#xff0c;及Stable Diffusion进行生成图片是使用的模型。其中.ckpt为大模型 ②&#xff1a;prompt --> 正向提示词。表示你的想法&#xff0c;你想要生成一副什么样的图…

更快更准更简单的工业异常检测新SOTA:SimpleNet

来源&#xff1a;投稿 作者&#xff1a;橡皮 编辑&#xff1a;学姐 论文链接&#xff1a;https://arxiv.org/pdf/2303.15140.pdf 代码链接&#xff1a;https://github.com/DonaldRR/SimpleNet 0.背景&#xff1a; 图像异常检测和定位任务旨在识别异常图像并定位异常子区域。…

eNSP-交换机VLAN配置

eNSP-交换机VLAN配置 文章目录 eNSP-交换机VLAN配置一、题目要求二、拓扑结构三、基础配置四、测试验证五、知识点详解1.VLAN2.VLAN的端口成员模式3.不同端口成员模式对报文的处理 一、题目要求 1.PC1可以访问PC2&#xff0c;PC4,但是不能访问PC3 2.PC2可以访问PC1&#xff0…

Python实现PSO粒子群优化算法优化BP神经网络回归模型(BP神经网络回归算法)项目实战

说明&#xff1a;这是一个机器学习实战项目&#xff08;附带数据代码文档视频讲解&#xff09;&#xff0c;如需数据代码文档视频讲解可以直接到文章最后获取。 1.项目背景 PSO是粒子群优化算法&#xff08;Particle Swarm Optimization&#xff09;的英文缩写&#xff0c;是一…

openGauss学习笔记-03 openGauss极简版单节点安装

文章目录 openGauss学习笔记-03 openGauss极简版单节点安装3.1 获取安装包3.1.1 下载对应平台的安装包3.1.2 解压安装包3.1.3 查看目录结构 3.2 准备软硬件安装环境3.2.1 硬件环境要求3.2.2 软件环境要求3.2.3 软件依赖要求 3.3 单节点安装3.3.1 安装前准备3.3.2 安装openGauss…

硬件电路设计--运算放大器(四)应用三比较器

文章目录 前言电压比较器一、过零比较器二、单门比较器三、滞回比较器&#xff08;施密特触发器&#xff09;四、窗口比较器五、未使用的比较器的处理六、推挽式输出或漏极开路输出开漏输出推挽输出 七、比较器的应用7.1 3V转5V7.2 双极性转单极性7.3 光敏电阻模数转换 八、比较…

互联网协议(Internet Protocol Suite)

文章目录&#xff1a; 一&#xff1a;从系统角度&#xff08;解释互联网是如何构成的&#xff0c;协议的设计思想&#xff09; 二&#xff1a;从用户的角度&#xff08;解释结构是如何发挥作用&#xff0c;完成网络数据交换的&#xff09; 参考&#xff1a;阮一峰 一&#x…

过滤器与拦截器的区别

1.运行顺序不同 过滤器是在客户端请求到达服务器&#xff0c;但还未到Servlet时运行的&#xff0c;而拦截器是在到达Servelt后&#xff0c;调用适配器(HandlerAdapter)前运行的。 2.配置方式不同 过滤器是在web.xml中配置&#xff0c;而拦截器是在Spring中的配置文件中配置&a…

mysql练习----单表查询

环境&#xff1a; 目录 第一题 第二题 第三题 第一题 --创建如下学生表 create table student( id int, name varchar(20), gender varchar(20), chinese int, math int, english int ); insert into student values (1,张明,男,89,78,90), (2,李进,男,67,53,95), (3,王…

Liunx下线程互斥与同步

文章目录 前言1.线程相关问题2.加锁操作1.相关接口2.加锁原理 3.线程安全4.线程同步 前言 本文主要围绕Linux下线程互斥问题进行相关讲解&#xff0c;同时也会线程同步相关问题。 1.线程相关问题 我们知道进程地址空间很多资源是被线程共享的。线程在并发访问这些共享资源的时…

代码随想录day11

20. 有效的括号 思路&#xff1a;这里用模拟栈的方法会更好理解&#xff0c;也就是我们每次遇到朝左方向的三种类型的时候&#xff0c;就加入相反方向的右括号到result栈中。由于栈是一个先进后出的方式&#xff0c;所以我们会有一个判断stack当前为不为空&#xff0c;和stack[…

4G理论概述

文章目录 LTE网络基础架构UMTS&#xff08;通用移动通信系统&#xff0c;Universal Mobile Telecommunications System&#xff09;UTRAN&#xff08;UMTS陆地无线接入网&#xff0c;UMTS Terrestrial Radio Access Network&#xff09;RNC&#xff08;无线网络控制器&#xff…

Vue的响应式实现思路及源码分析

Vue # 思路 new Vue() 首先执行初始化,对 data 执行响应化处理,这个过程发生在 Observer 中同时对模板执行编译,找到其中动态绑定的数据,从 data 中获取并初始化视图,这个过程发生在 compile 中同时定义一个 更新函数 和 Watcher,将来对应数据变化时 Watcher 会调用 更新…

python编程——字符串讲解

作者&#xff1a;Insist-- 个人主页&#xff1a;insist--个人主页 本文专栏&#xff1a;python专栏 专栏介绍&#xff1a;本专栏为免费专栏&#xff0c;并且会持续更新python基础知识&#xff0c;欢迎各位订阅关注。 前言 本文将介绍python字符串是什么&#xff1f;以及它的几…