C#(五)之常量、@控制符、转译符、ASCII编码,Console.Write

简介: 对C#的常量,ASCII编码、@控制符、“+”连接符、Console.WriteLine及转译字符的简单应用。

QQ图片20220426102753.jpg

这篇日志记录一下C#的常量,ASCII编码、@控制符、“+”连接符、Console.WriteLine及转译字符。


1:声明常量


常量一旦被定义,不易被修改。


(1)const声明:定义常量必须赋值


const double pai = 3.1415926; const声明的变量本身就是一个静态变量。不需要再使用static修饰。


(2):readonly声明:初始定义可不赋值,赋值之后不能修改。


Readonly int aa = 52; Readonly 不是一个静态变量。


2:ASCII编码


把一个字符类型变量转换成整数型


十进制:


int aaa = (int)'B'; Console.WriteLine(aaa); // 66

char bbb = (char)66;  //B Console.WriteLine(bbb);


3:转义字符


QQ图片20220426102756.png


以上就是C#中定义的转义字符。


实例:


Console.WriteLine("what is your name?\nMy name is GC");  // 换行
Console.WriteLine("C:\\ASD\\az"); // 表示电脑路径
Console.WriteLine("\"你好\"");//显示双引号


输出结果:


what is your name?
My name is GC
C:\ASD\az
"你好"


4:@符的使用


(1):忽略转义字符


Console.WriteLine(@"what is your name?\nMy name is GC");  // 输出转义字符,不换行。


输出结果:


what is your name?\nMy name is GC


(2):让字符串跨行。


这个是这样,做php的时候写变量可以这样写:


$adminList = Db::query("SELECT p1.*,p2.title as rolename from admin p1
                                LEFT JOIN auth_group p2 ON p2.id = p1.gid
                                where $map order by p1.id asc limit $num,$pagesize");


C#这样写是不可以的。想跨行,得这样写:


string strSQL = "SELECT * FROM HumanResources.Employee AS e"
                           + " INNER JOIN Person.Contact AS c"
                           + " ON e.ContactID = c.ContactID"
                           + " ORDER BY c.LastName";
            Console.WriteLine(strSQL);


输出结果:


SELECT * FROM HumanResources.Employee AS e INNER JOIN Person.Contact AS c ON e.ContactID = c.ContactID ORDER BY c.LastName


使用@符的话:就是这样


string strSQL = @"SELECT * FROM HumanResources.Employee AS e
                            INNER JOIN Person.Contact AS c
                            ON e.ContactID = c.ContactID
                            ORDER BY c.LastName";


输出结果:


SELECT * FROM HumanResources.Employee AS e
                            INNER JOIN Person.Contact AS c
                            ON e.ContactID = c.ContactID
                            ORDER BY c.LastName


(3):在标识符中的用法


这个先搁置, 第一,我觉得这个没啥用, 第二,目前来看跟我好像没啥关系。碰到了再说。


5:+的使用


对于数字类型的变量,他是加号,用来搞运算的。


对于字符串类型的变量,他就是连接符,这个跟javascript类似。


string qa = "xiao";
string qs = " han";
string qd = qa + qs;
Console.WriteLine(qd);


输出结果:


xiaohan


6:Console.WriteLine 变量格式化输出


占位符输出:


Console.WriteLine("{0} + {1} = {2}",a,b,a+b); //占位符输出


输出结果:


50 + 201 = 251


还可以控制变量输出位数:输出宽度不足,左侧用空格补齐。


Console.WriteLine("{0,6}\n + {1,4}\n --------\n {2,5}\n",a,b,a+b); //控制每行输出宽度,输出宽度不足,左侧用空格补齐


输出结果:


50
 +  201
 --------
   251


输出小数:


基本格式:Console.WriteLine("{0:#.00}",变量);


其中**#代表变量整数位,.00代表小数位,有几个0就表示有几个小数位。**


double a = 3.1415926;
Console.WriteLine("{0:#.00}",a);
Console.WriteLine("{0:#.0000}", a);


输出结果:


3.14
3.1416


用法跟上边一样:


Console.WriteLine("{0,6:C2}\n + {1,4:C2}\n --------\n {2,5:C2}\n",a,b,a+b);


输出结果:


¥3.14
 + ¥1.26
 --------
 ¥4.40


下方是我测试使用的所有代码:控制台应用


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace gc
{
    class Program
    {
        /* C#主要的运行函数,就是main函数 */
        static void Main(string[] args)
        {
            int aaa = (int)'B';
            //Console.WriteLine(aaa); // 66
            char bbb = (char)66;  //B
            //Console.WriteLine(bbb);
            //Console.WriteLine("what is your name?\nMy name is GC");  // 换行
            //Console.WriteLine("C:\\ASD\\az"); // 表示电脑路径
            //Console.WriteLine("\"你好\"");//显示双引号
            //Console.WriteLine(@"what is your name?\nMy name is GC");  // 输出转义字符,不换行。
            string strSQL = "SELECT * FROM HumanResources.Employee AS e"
                           + " INNER JOIN Person.Contact AS c"
                           + " ON e.ContactID = c.ContactID"
                           + " ORDER BY c.LastName";//*/
            string strS = @"SELECT * FROM HumanResources.Employee AS e
                            INNER JOIN Person.Contact AS c
                            ON e.ContactID = c.ContactID
                            ORDER BY c.LastName";//*/
            string qa = "guan";
            string qs = " chao";
            string qd = qa + qs;
            /*int a = 50;
            int b = 201;
            int total;//*/
            double a = 3.1415926;
            Console.WriteLine("{0:#.00}",a);
            Console.WriteLine("{0:#.0000}", a);
            //double b = 1.258;
            //Console.WriteLine("{0,6:C2}\n + {1,4:C2}\n --------\n {2,5:C2}\n",a,b,a+b);
            //Console.WriteLine(qd);
        }
    }
}


目录
相关文章
|
7月前
|
存储 安全 数据库连接
C#深度揭秘:常量的魅力和实践,一文让你从新手到专家
C#深度揭秘:常量的魅力和实践,一文让你从新手到专家
56 0
|
7月前
|
C# 开发者
C# 10.0引入常量插值字符串:编译时确定性的新篇章
【1月更文挑战第22天】在C# 10.0中,微软为开发者带来了一项引人注目的新特性——常量插值字符串。这一功能允许在编译时处理和计算字符串插值表达式,从而得到可以在编译时确定的常量字符串。本文将深入探讨C# 10.0中常量插值字符串的概念、工作原理、使用场景及其对现有字符串处理方式的改进,旨在帮助读者更好地理解和应用这一强大的新特性。
|
2月前
|
存储 C#
C#使用哈夫曼编码实现压缩与解压
C#使用哈夫曼编码实现压缩与解压
40 0
|
4月前
|
开发者 C# Android开发
Xamarin 与 .NET:解锁现代化移动应用开发的超级武器——深入探讨C#与.NET框架如何赋能跨平台应用,实现高效编码与卓越性能
【8月更文挑战第31天】Xamarin 与 .NET 的结合为开发者提供了强大的平台,用于构建现代化移动应用。通过 C# 和 .NET 框架,Xamarin 可以实现一次编写、多平台运行,覆盖 iOS、Android 和 Windows。这种方式不仅节省了开发时间和成本,还保证了应用的一致性和高质量。Xamarin 是一个开源框架,专为跨平台移动应用开发设计,允许使用 C# 语言和 .NET 核心库构建原生应用,并访问各平台特定功能。微软维护的 Xamarin 是 Visual Studio 生态系统的一部分,极大地提高了开发效率。
93 0
|
6月前
|
开发框架 .NET 编译器
程序与技术分享:C#基础知识梳理系列三:C#类成员:常量、字段、属性
程序与技术分享:C#基础知识梳理系列三:C#类成员:常量、字段、属性
42 2
|
6月前
|
存储 C# 开发者
C# 编程基础:注释、变量、常量、数据类型和自定义类型
C# 编程基础:注释、变量、常量、数据类型和自定义类型
|
7月前
|
C#
C# 获取文件编码格式
C# 获取文件编码格式
70 0
【C#视频】常量、枚举、结构体、数组
【C#视频】常量、枚举、结构体、数组
|
C#
C#中Console.WriteLine()与Console.Write的区别
C#中Console.WriteLine()与Console.Write的区别
173 0
|
C# 索引
C#之常量与变量排错
C#之常量与变量排错