C#7语法快速参考-第一章 Hello World
选择IDE
要开始使用C#编程,您需要一个支持微软.NET框架的集成开发环境(IDE)。最受欢迎的选择是微软自己的Visual Studio。初学可以使用Visual Studio Community,这个版本是一个轻量级免费的软件,可以从Visual Studio网站上下载(https://visualstudio.microsoft.com/zh-hans/vs/community/)。
自从2002年C# 1.0的首次发布以来,C#语言经历了多次更新。在撰写本文时,C# 7.3是当前版本,于2018年发布。该语言的每个版本对应于Visual Studio的一个版本,因此为了使用C# 7.3的特性,您需要Visual Studio 2017(版本15.7或更高)。
创建工程
在安装IDE之后,继续并启动它。然后您需要创建一个新项目,它将管理C#源文件和其他资源。要显示新项目窗口,请转到Visual Studio中的 “文件”-“新建”-“项目”。从那里选择左侧框架中的 “Visual c#”模板类型。然后在正确的框架中选择“控制台应用(.NET Framework)“模板。如果需要,可以在窗口底部配置项目的名称和位置。完成后,单击OK,项目向导将创建您的项目。
现在您已经创建了一个C#项目。在“解决方案资源管理器”窗格中(“视图”菜单-“解决方案资源管理器”),您可以看到项目由一个应该已经打开的C#源文件(.cs)组成。如果没有,你可以在解决方案资源管理器中点击文件以打开它。在源文件中有一些基本代码可以帮助您入门。但是,为了在这个阶段保持简单,可以继续简化代码如下。
namespace Chapter1
{
class Program
{
static void Main(string[] args)
{
}
}
}
这个应用程序现在由一个名为Program的类组成,其中包含一个返回值为空的Main方法,类和方法体都用大括号分隔。Main方法是程序的入口点,必须具有这种格式。大小写也需要注意,因为C#是区分大小写的。大括号分隔了属于代码实体(如类或方法)的内容,必须包含它们。大括号及其内容称为代码块,或仅仅称为块。
Hello World
就像学习其他新的编程语言一样,要编写的第一个程序是显示“Hello World”文本字符串的程序。这是通过在Main方法的大括号中添加以下代码来实现的。
System.Console.WriteLine("Hello World");
这行代码使用WriteLine方法,该方法接受由双引号分隔的单个字符串参数。方法位于System命名空间的Console类中。注意,点运算符(.)用于访问名称空间和类的成员。语句必须以分号结束,C#中的所有语句都必须以分号结束。您的代码现在应该是这样的。
namespace Chpater1
{
class Program
{
static void Main(string[] args)
{
System.Console.WriteLine("Hello World!");
}
}
}
WriteLine方法在打印的字符串的末尾添加换行符。要显示没有换行符的字符串,可以使用Write方法。
IntelliSense(智能感应)
当在Visual Studio中编写代码时,一个名为IntelliSense的窗口会在有多个预先确定的选项可供选择的地方弹出。这个窗口非常有用,可以按Ctrl+Space手动打开。它使您能够快速访问您可以在程序中使用的任何代码实体,包括.NET框架的类和方法及其描述。这是一个非常强大的特性,您应该学会使用。另外一个小技巧就是可以在输入cw后按Tab键,直接写出Console.WriteLine();
在Visual Studio 中编译运行代码
编写完HelloWorld程序后,下一步是编译并运行它。为此,打开”调试”菜单并选择”开始执行(不调试)”,或者简单地按Ctrl+F5。然后Visual Studio将编译并运行应用程序,该应用程序将在控制台窗口中显示字符串”Hello World!”。
之所以不希望在这里选择”开始执行(不调试)”命令(F5),是因为一旦程序完成执行,控制台窗口将立即关闭。
命令行编译
如果你没有安装Visual Studio IDE,只要安装了.NET Framework,也可以通过命令和编译运行Hello World程序。按 Win+R输入cmd,打开cmd窗口,切换到源程序目录,如:D:\csharp\BasicCSharp\CSharpSeven\Chpter1,然后找.NET Framework安装目录下的csc.exe,一般位于C:\Windows目录下,如C:\Windows\Microsoft.NET\Framework64\v2.0.50727\csc.exe,在命令行中输入C:\Windows\Microsoft.NET\Framework64\v2.0.50727\csc.exe Program.cs ,即可编译程序。编译后,输入Program.exe,可以运行程序,如下图所示:

语言版本
Visual Studio中的项目默认情况下将使用该语言的最新主要版本(当前是c# 7.3)进行编译。要使用最新次要版本(C# 7.1、7.2和7.3)的最新特性,您需要更新项目的设置。为此,首先在“解决方案资源管理器”中右键单击项目节点并选择“Properties”。然后,单击左侧的“生成”选项卡,然后单击右下角的“高级”按钮。打开一个新的窗口,在这里您可以从下拉列表中改变语言版本。将选择项更改为C#最新小版本(最新)。单击OK,然后关闭Properties选项卡,您将启用C#的最新特性。

注释
注释用于将注释插入源代码中。C#使用标准的C++注释符号,包括单行注释和多行注释。它们只是为了增强源代码的可读性,对最终的程序没有影响。单行注释以//开头,一直延伸到行尾。多行注释可以跨越多行,由/*和*/分隔。
除此之外,还有两个文档注释。有一个单行文档注释以///开头,还有一个多行文档注释以/**和*/分隔。这些注释用于生成类文档

C#7语法快速参考-第一章 Hello World的更多相关文章
- jenkins2 pipeline 语法快速参考
jenkins2 pipeline中常用的语法快速参考. 文章来自:http://www.ciandcd.com文中的代码来自可以从github下载: https://github.com/ciand ...
- Razor 语法快速参考
Razor 语法快速参考 本文引自:http://haacked.com/archive/2011/01/06/razor-syntax-quick-reference.aspx 语法名称 Raz ...
- Objective-C语法快速参考(C# 和 Objective-C 语法的比较)
大部分有一点其他平台开发基础的初学者看到XCode ,第一感想是磨拳擦掌,看到 Interface Builder 之后,第一感想是跃跃欲试,而看到Objective-C 的语法,第一感想就变成就望 ...
- Razor语法快速参考
语法/示例 Razor Web Forms对应写法或说明 代码块 @{ int x = 123; string y = "because.";} <% int x = 123 ...
- web前端学习python之第一章_基础语法(二)
web前端学习python之第一章_基础语法(二) 前言:最近新做了一个管理系统,前端已经基本完成, 但是后端人手不足没人给我写接口,自力更生丰衣足食, 所以决定自学python自己给自己写接口哈哈哈 ...
- 学习笔记(一)--->《Java 8编程官方参考教程(第9版).pdf》:第一章到六章学习笔记
注:本文声明事项. 本博文整理者:刘军 本博文出自于: <Java8 编程官方参考教程>一书 声明:1:转载请标注出处.本文不得作为商业活动.违者本人不负法律责任.违法者自负一切法律责任. ...
- JAVA 入门第一章(语法基础)
本人初学java 博客分享记录一下自己的学习历程 java我的初步学习分为六章,有c和c++的基础学起来也简便了很多. 第一章 语法基础 第二章 面向对象 第三章 常用工具类 第四章 文件操纵 第五章 ...
- web前端学习python之第一章_基础语法(一)
web前端学习python之第一章_基础语法(一) 前言:最近新做了一个管理系统,前端已经基本完成, 但是后端人手不足没人给我写接口,自力更生丰衣足食, 所以决定自学python自己给自己写接口哈哈哈 ...
- 第一章 –– Java基础语法
第一章 –– Java基础语法 span::selection, .CodeMirror-line > span > span::selection { background: #d7d4 ...
随机推荐
- HDU 1241 Oil Deposits 题解
Oil Deposits Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Tota ...
- 上云测试,这些关键点你get 到没有
导读,先从云化说起,再谈谈云化形态下,除了常规的功能测试,云化的测试,还需要有几个必须要get到的硬核指标,最后在分别详解这些关键点硬核指标是什么,和如何测试呢.这是个值得深思的问题,希望所有测试人都 ...
- 5.4 RDD编程---综合案例
一.求top值 任务描述:求出多个文件中数值的最大.最小值 二.求最大最小值 任务描述:求出多个文件中数值的最大.最小值 解题思路:通过一个人造的key,让所有的值都成为“key”的value-lis ...
- 阿里云Web应用防火墙采用规则引擎、语义分析和深度学习引擎相结合的方式防护Web攻击
深度学习引擎最佳实践 {#concept_1113021 .concept} 阿里云Web应用防火墙采用多种Web攻击检测引擎组合的方式为您的网站提供全面防护.Web应用防火墙采用规则引擎.语义分析和 ...
- vue报错 Uncaught (in promise) NavigationDuplicated {_name:""NavigationDuplicated"... 的解决方法
在进行跳转的时候报错 app.js:87499 Uncaught (in promise) NavigationDuplicated?{_name: "NavigationDuplicate ...
- mysql中的case when then 的用法
将立立饭饭的性别变更为女 ,烦烦 嗯嗯 问我的性别变更为男 update `table` set sex = ( case when sname in('立立','饭饭') then '女' else ...
- SQLAlchemy(4)
结果查询 上节课使用query从数据库中查询到了结果,但是query返回的对象是直接可用的吗? 首先导入模块 from connect import session from user_modules ...
- SpringBoot设置支持跨域请求
跨域:现代浏览器出全的考虑,在http/https请求时必须遵守同源策略,否则即使跨域的http/https 请求,默认情况下是被禁止的,ip(域名)不同.或者端口不同.协议不同(比如http.htt ...
- JDOJ 2255 A+B Problem
JDOJ 2255: A+B Problem https://neooj.com/oldoj/problem.php?id=2255 Description Solve A+B problem wit ...
- HTML基础五-starrysky页面动起来
Starrysky前端框架 链接:https://pan.baidu.com/s/1P8mPrHZjyRtzw1NWnAx-9w 提取码:cjl5 接口文档:https://www.showdoc.c ...