`
hududanyzd
  • 浏览: 776785 次
文章分类
社区版块
存档分类
最新评论

C#程序设计入门经典之C#的基本语法

 
阅读更多

C#代码的外观和操作方式与C++和Java非常类似。初看起来,其语法可能比较混乱,不像书面英语和其他语言。但是,在C#编程中,使用的样式是比较清晰的,不用花太多的力气就可以编写出可读性很强的代码。

  与其他语言的编译器不同,无论代码中是否有空格、回车符或tab字符(这些字符统称为空白字符),C#编译器都不考虑这些字符。这样格式化代码时就有很大的自由度,但遵循某些规则将有助于使代码易于阅读。

  C#代码由一系列语句组成,每个语句都用一个分号来结束。因为空格被忽略,所以一行可以有多个语句,但从可读性的角度来看,通常在分号的后面加上回车符,这样就不能在一行上放置多个语句了。但一句代码放在多个行上是可以的(也比较常见)。

  C#是一个块结构的语言,所有的语句都是代码块的一部分。这些块用花括号来界定("{" 和 "}"),代码块可以包含任意多行语句,或者根本不包含语句。注意花括号字符不需要附带分号。

  所以,简单的C#代码块如下所示:

{
<code line 1, statement 1>;
<code line 2, statement 2>
<code line 3, statement 2>;
}

  其中<code line x, statement y>部分并不是真正的C#代码,而是用这个文本作为C#语句的占位符。注意在这段代码中,第2、3行代码是同一个语句的一部分,因为在第2行的末尾没有分号。

  在这个简单的代码块中,还使用了缩进格式,使C#代码的可读性更高。这不是我的发明,而是一个标准规则,实际上在默认情况下VS会自动缩进代码。一般情况下,每个代码块都有自己的缩进级别,即它向右缩进了多少。代码块可以互相嵌套(即块中可以包含其他块),而被嵌套的块要缩进得多一些。

{
<code line 1>;
{
<code line 2>;
<code line 3>;
}
<code line 4>;
}

  前面代码的续行通常也要缩进得多一些,如上面第一个示例中的第3行代码。

  注释:

  在能通过Tools | Options访问的VS Options对话框中,显示了VS用于格式化代码的规则。在Text Editor | C# | Formatting节点的子目录下,包含了完整的格式化规则。此处的大多数设置都反映了还没有讲述的C#部分,但如果以后要修改设置,以更适合自己的个性化样式,就可以回过头来看看这些设置。在本书中,为了简洁起见,所有的代码段都使用默认设置来格式化。

  记住,这种样式并不是强制的。但如果不使用它,读者在阅读本书时会很快陷入迷茫之中。

  在C#代码中,另一个常见的语句是注释。注释并不是严格意义上的C#代码,但代码最好有注释。注释就是解释,即给代码添加描述性文本(用英语、法语、德语、外蒙古语等),编译器会忽略这些内容。在开始处理比较长的代码段时,注释可用于给正在进行的工作添加提示,例如“这行代码要求用户输入一个数字”,或“这段代码由Bob编写”。C#添加注释的方式有两种。可以在注释的开头和结尾放置标记,也可以使用一个标记,其含义是“这行代码的其余部分是注释”。在C#编译器忽略回车符的规则中,后者是一个例外,但这是一种特殊情况。

  要使用第一种方式标记注释,可以在注释的开头加上“/*”,在末尾加上“*/”。这些注释符号可以在单独一行上,也可以在不同的行上,注释符号之间的所有内容都是注释。注释中惟一不能输入的是“*/”,因为它会被看作注释结束标记。所以下面的语句是正确的。

/* This is a comment */
/* And so...
... is this! */

  但下面的语句会产生错误:

/* Comments often end with "*/" characters */

  注释结束符号后的内容("*/"后面的字符)会被当作C#代码,因此产生错误。

  另一个添加注释的方法是用“//”开始一个注释,其后可以编写任何内容,只要这些内容在一行上即可。下面的语句是正确的:

// This is a different sort of comment.

  但下面的语句会失败,因为第二行代码会解释为C#代码:

// So is this,

but this bit isn't.

  这类注释可用于语句的说明,因为它们都放在一行上:

<A statement>; // Explanation of statement

  前面说过有两种方法给C#代码添加注释。但在C#中,还有第三类注释,严格地说,这是//语法的扩展。它们都是单行注释,用三个"/"符号来开头,而不是两个。

/// A special comment

  在正常情况下,编译器会忽略它们,就像其他注释一样,但可以配置VS,在编译项目时,提取这些注释后面的文本,创建一个特殊格式的文本文件,该文件可用于创建文档说明书。具体内容见第28章。

  特别要注意的一点是,C#代码是区分大小写的。与其他语言不同,必须使用正确的大小写形式输入代码,因为简单地用大写字母代替小写字母会中断项目的编译。

  如果读者对C#语言没有什么了解,就很难理解这一点,看看下面这行代码,它在第2章的第一个示例中使用:

Console.WriteLine("The first app in Beginning C# Programming!");

  C#编译器能理解这行代码,因为Console.WriteLine()命令的大小写形式是正确的。但是,下面的语句都不能工作:

console.WriteLine("The first app in Beginning C# Programming!");

CONSOLE.WRITELINE("The first app in Beginning C# Programming!");

Console.Writeline("The first app in Beginning C# Programming!");

  这里使用的大小写形式是错误的,所以C#编译器不知道我们要做什么。

  幸好,VS在代码的输入方面提供了许多帮助,在大多数情况下,它都知道(程序也知道)我们要做什么。在输入代码的过程中,VS会推荐用户可能要使用的命令,并尽可能纠正大小写问题。
 C#控制台应用程序的基本结构

  下面看看第2章的控制台应用程序示例(ConsoleApplication1),研究一下它的结构。其代码如下所示:

using System;
using System.Collections.Generic;
using System.Text;

namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
// Output text to the screen.
Console.WriteLine("The first app in Beginning C# Programming!");
Console.ReadKey();
}
}
}

  可以立即看出,上一节讨论的所有语法元素这里都有。其中有分号、花括号、注释和适当的缩进。

  目前看来,代码中最重要的部分如下所示:

static void Main(string[] args)
{
// Output text to the screen.
Console.WriteLine("The first app in Beginning C# Programming!");
Console.ReadKey();
}

  在运行控制台应用程序时,就运行这段代码,更准确地说,是运行花括号中的代码块。如前所述,注释行不做任何事情,包含它们只为了简洁而已。其他两行代码在控制台窗口中输出了一些文本,并等待一个响应。但目前我们还不需要关心它的具体机制。

  这里要注意一下如何实现上一章介绍的代码突出显示功能,虽然这对于Windows应用程序来说比较重要,但它是一个非常有用的特性。要实现该功能,需要使用#region和#endregion关键字,来定义可以扩展和收缩的代码区域的开头和结尾。例如,可以修改为ConsoleApplication1生成的代码,如下所示:

#region Using directives
using System;
using System.Collections.Generic;
using System.Text;
#endregion

  这样就可以把这些代码行收缩为一行,以后要查看其细节时,可以再次扩展它。这里包含的using语句和其下的namespace语句在本章的后面解释。

  注释:

  以#开头的任意关键字实际上都是一个预处理指令,严格地说并不是C#关键字。除了这里描述的#region和#endregion关键字之外,其他关键字都相当复杂,用法也比较专业。所以,这是一个读者通读全书后才能探究的主题。

  现在不必考虑示例中的其他代码,因为本书前几章仅解释C#的基本语法,至于应用程序进行Console.WriteLine()调用的具体方式,则不在我们的考虑之内。以后会阐述这些代码的重要性。

分享到:
评论

相关推荐

    C#程序设计 一本不错的入门书

    一本C#的入门书籍! C#是一种安全的、稳定的、简单的、优雅的,由C和C++衍生出来的面向对象的编程语言。它在继承C和C++强大功能的同时去掉了一些它们的复杂特性(例如没有宏和模版,不允许多重继承)。C#综合了VB...

    C#入门经典.zip

    C#是微软公司发布的一种面向对象的、运行于.NET Framework之上的高级程序设计语言。并定于在微软职业开发者论坛(PDC)上登台亮相。C#是微软公司研究员Anders Hejlsberg的最新成果。C#看起来与Java有着惊人的相似;它...

    C#入门经典(第5版)

    《C#入门经典(第5版)》全面讲解C# 2010和.net架构编程知识,为您编写卓越C# 2010程序奠定坚实基础。C#入门经典系列是屡获殊荣的C#名著和超级畅销书。最新版的《C#入门经典(第5版)》 全面讲解C# 2010基础知识,...

    C#.net程序设计入门

    本资源介绍了c#.net语法基础,使用项目式,分解任务的方式组织知识点,内容描述通俗易懂,非常适合0基础编程学习。

    Visual C# 2010程序设计教程PPT

    "第2章 C#语法基础 " "C#基础元素 " C#中变量及数据类型 装箱与拆箱操作 数据类型转换 运算符与表达式 第3章 程序流程控制 选择结构及if,switch语句 循环结构及循环语句 跳出循环 异常...

    C#入门经典教程.ppt

    C#是微软公司发布的一种面向对象的、运行于.NET Framework之上的高级程序设计语言。并定于在微软职业开发者论坛(PDC)上登台亮相。C#是微软公司研究员Anders Hejlsberg的最新成果。C#看起来与Java有着惊人的相似;它...

    C#程序设计实例

    关于C#语法的入门文档,包含大量的程序源码,是初学者的好东西!

    c#学习入门的语法基础

    c#语法基础 程序和程序设计 算法 结构化程序设计和模块化结构

    Visual C# 2008从入门到精通.pdf

     本书以最新的.NET 3.5和Visual C# 2008为基础循序渐进地介绍了从入门到深入掌握Visual C# 2008所需的各个方面,包括开发环境的配置、C#语法、Windows应用程序开发、处理文件和注册表,创建基于Web的应用程序以及...

    C#教学PPT,c#从入门到精通第四版

    c#从入门到精通第四版的pptC#是微软公司发布的一种面向对象的、运行于.NET Framework之上的高级程序设计语言。并定于在微软职业开发者论坛(PDC)上登台亮相。C#是微软公司研究员Anders Hejlsberg的最新成果。C#看起来...

    C#4.0从入门到精通

    本资源是关于C#程序设计的ppt课件,以Visual Studio 2010为开发环境,全面而细致地介绍了C#的语法和编程技术。

    asp.net(C#)基础语法下载

    asp.net(C#)基础语法笔记下载,C#程序设计入门

    C#面向对象程序设计案例教程

    第2章 C#语法基础 2.1 C#语言的数据类型 2.1.1 案例说明 2.1.2 代码及分析 2.1.3 相关知识及滓意事项 2.2 C#语言的运算符和表达式 2.2.1 案例说明 2.2.2 代码及分析 2.2.3 相关知识及注意事项 2.3 本章小...

    C#编程兵书(完整扫描版 )pdf格式 电子书

    第2章 抛砖引玉:C#程序设计基础 第2篇 C#面向对象编程 第3章 羽翼丰满:C#的面向对象 第4章 双管齐下:抽象类和接口 第5章 无懈可击:调试异常与编码标准 第6章 添砖加瓦:字符、字符串 处理与正则表达式 第7章 兵...

    C#完全手册 面向对象C#

    分为五部分,一是概述、二是C#程序设计基础,三是面向对象C#,四是深入了解C#,五是附录部分。很好的入门资料,希望能给大家帮助

    C#入门经典

    C#是微软公司发布的一种面向对象的、运行于.NET Framework之上的高级程序设计语言。并定于在微软职业开发者论坛(PDC)上登台亮相。C#是微软公司研究员Anders Hejlsberg的最新成果。C#看起来与Java有着惊人的相似;它...

    Visual C#2010 从入门到精通(Visual.C#.2010.Step.By.Step).完整去密码锁定版 I部分

    所属分类:计算机 &gt; 软件与程序设计 &gt; C# 内容简介 书籍 计算机书籍  c#作为微软的旗舰编程语言,深受程序员喜爱,是他们编写高效应用程序的首选语言。visual c# 2010新增了大量可圈可点的丰富特性,本书围绕着...

    零基础学C#+代码+视频+光盘资料 提取码4xvw

    全书共分16章,包括Visual Studio的安装、踏上C#开发的征程、必须学会的C#语法、流程控制语句、看似简单的字符串、面向对象程序设计、Windows交互式图形界面、数据访问技术、程序调试与异常处理、多线程编程技术以及...

    C#入门第一讲.---用c#编程

    C#是微软公司发布的一种面向对象的、运行于.NET Framework之上的高级程序设计语言。并定于在微软职业开发者论坛(PDC)上登台亮相。C#是微软公司研究员Anders Hejlsberg的最新成果。C#看起来与Java有着惊人的相似;它...

    零基础学C#全彩扫描明日科技出版

    全书共分16章,包括Visual Studio的安装、踏上C#开发的征程、必须学会的C#语法、流程控制语句、看似简单的字符串、面向对象程序设计、Windows交互式图形界面、数据访问技术、程序调试与异常处理、多线程编程技术以及...

Global site tag (gtag.js) - Google Analytics