亚洲乱色熟女一区二区三区丝袜,天堂√中文最新版在线,亚洲精品乱码久久久久久蜜桃图片,香蕉久久久久久av成人,欧美丰满熟妇bbb久久久

LOGO OA教程 ERP教程 模切知識(shí)交流 PMS教程 CRM教程 開(kāi)發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

C?;A(chǔ) =

admin
2017年2月7日 18:53 本文熱度 7910
1.       第一個(gè)C#程序

   

using System;

namespace
 aa

{

    
class
 MyFirstClass

    
{

       
static void
 Main()

       
{

          Console.WriteLine(
"This isn''t at all like Java!"
);

          Console.ReadLine();

          
return
;

       }


    }


}


   說(shuō)明:

(1)       每個(gè)語(yǔ)句必須用一個(gè)分號(hào)(;)結(jié)尾

(2)       語(yǔ)句可以寫(xiě)在多個(gè)代碼行上,不需要使用續(xù)行字符

(3)       單行注釋以“//”開(kāi)頭,多行注釋/* …*/

(4)       Java一樣,所有的C#代碼都必須包含在一個(gè)類(lèi)中

(5)       每個(gè)C??蓤?zhí)行文件都必須有一個(gè)入口點(diǎn)——Main()方法,該方法要么返回void,要么返回一個(gè)整數(shù)(int

2.       變量

2.1    變量的定義

        在c#中聲明變量使用下述語(yǔ)法:datatype identifier;

       例如: int i;

       無(wú)論變量的數(shù)據(jù)類(lèi)型是什么,聲明變量的c#語(yǔ)法都是相同的。

       多個(gè)變量的聲明,如果類(lèi)型相同,可以用一個(gè)語(yǔ)句聲明,如果類(lèi)型不同,必須用多個(gè)語(yǔ)句聲明:

      例如:int x=10,y=20;// x and y are both ints

       int x = 10, bool y = true;// this won’t compile!

2.2    變量的初始化

       C#編譯器需要對(duì)變量初始化之后才能在操作中引用該變量,C#編譯器把未初始化的變量當(dāng)作錯(cuò)誤來(lái)看 待,這樣可以防止我們無(wú)意中從其它程序遺留下來(lái)的內(nèi)存中獲取垃圾值。

        在C#中實(shí)例化一個(gè)引用對(duì)象需要使用new關(guān)鍵字。

       objSomething new Something(); // this creates a Something on the heap

2.3    變量的作用域

       一般情況下,確定作用域有以下規(guī)則:

      1) 只要字段所屬的類(lèi)在某個(gè)作用域內(nèi),其字段也在該作用域內(nèi)。

      2) 局部變量存在于表示聲明該變量的塊語(yǔ)句或方法結(jié)束的封閉花括號(hào)之前的作用域

      3) for、while或類(lèi)似語(yǔ)句中聲明的局部變量存在于該循環(huán)體內(nèi)。

      4) 同名的局部變量不能在同一作用域內(nèi)聲明兩次。

public static void Main()

{

   
int j = 20
;

   
for(int i=0;i<10;i++
)

   
{

      
int j=30;//Can''t do this -j is still in scope


      Console.WriteLine(j
+i);

   }
 

}


     5) 編譯器可以區(qū)分字段和方法中的局部變量。

using System;

namespace
 aa

{

   
class
 ScopeTest2

   
{

      
static int j = 20
;

      
public static void
 Main()

      
{

         
int j = 30
;

         Console.WriteLine(j);

         
return
;

      
{

   }


}


3.       常量

常量格式:const int a = 10;

C#中,只能把局部變量和字段聲明為常量。

說(shuō)明:

1) 常量必須在聲明時(shí)初始化,且不能更改

2) 常量的值必須在編譯時(shí)用于計(jì)算。因此不能從一個(gè)變量中提取值來(lái)初始化常量。如果需要這么做,應(yīng)使用只讀字段

3) 常量總是靜態(tài)的

4) 常量在程序中至少有3個(gè)好處:a)使程序更易于閱讀 b)使程序更易于修改 c)更容易避免程序出現(xiàn)錯(cuò)誤

4.       預(yù)定義數(shù)據(jù)類(lèi)型

C#把數(shù)據(jù)類(lèi)型分為兩種:值類(lèi)型和引用類(lèi)型。

值類(lèi)型直接存儲(chǔ)其值,數(shù)據(jù)存儲(chǔ)在堆棧中;引用類(lèi)型存儲(chǔ)對(duì)值的引用,而數(shù)據(jù)存儲(chǔ)在托管堆上。

C#有15個(gè)預(yù)定義類(lèi)型,其中13個(gè)是值類(lèi)型,2個(gè)是引用類(lèi)型(stringobject)。

13個(gè)值類(lèi)型包括8個(gè)整數(shù)類(lèi)型sbyte、short、int、long、byte、ushort、uint、ulong;2個(gè)浮點(diǎn)類(lèi)型float、double;1個(gè)deciaml類(lèi)型decimal;1個(gè)bool類(lèi)型bool;一個(gè)字符類(lèi)型char;

1) 如果代碼沒(méi)有對(duì)某個(gè)非整數(shù)值硬編碼,則編譯器一般假定該變量是double。如果想指定值為float,可以在其后加上字符f(或F float f = 12.3f;

2) decimal類(lèi)型不是基本類(lèi)型,所以在計(jì)算時(shí)使用該類(lèi)型會(huì)有性能損失,要把數(shù)字指定為decimal,可以在數(shù)字后面加上字符m(或M decimal d = 12.3m;

3) bool值不能和整數(shù)值轉(zhuǎn)換,bool值必須是true或者false

4) C#中,可以在字符串前面加上字符@,那么字符串中的所有字符都看作是其原來(lái)的意思。

string filepath = @”C:\ProCSharp\First.cs”;

5.       流控制

1)條件語(yǔ)句(if語(yǔ)句、switch語(yǔ)句)

     aif子句中的表達(dá)式必須等于布爾值,當(dāng)“==”誤寫(xiě)成“=”時(shí),會(huì)導(dǎo)致一個(gè)編譯錯(cuò)誤。

     bcase的值必須是常量表達(dá)式——不允許使用變量,且常量不能相同(字符串可以作為測(cè)試變量)。

如果一個(gè)case子句為空,就可以從這個(gè)case跳到下一個(gè)case上,這樣就可以用相同的方式處理兩個(gè)或多個(gè)case子句。

C#中,switch子句里面case子句的排放順序是無(wú)關(guān)緊要的。

2)循環(huán)

C#除了for循環(huán)、while循環(huán)和do…while循環(huán) 以外增加了foreach循環(huán)。foreach循環(huán)可以迭代集合中的每個(gè)項(xiàng)目,但不能改變集合中各項(xiàng)的值。 如果需要改變各項(xiàng)的值,就應(yīng)使用for循環(huán)。例如:

 

foreach(int temp in arrayOfInts)

 
{

Console.WriteLine(temp);

 }


3)跳轉(zhuǎn)語(yǔ)句(goto、breakcontinue、return

   goto跳轉(zhuǎn)到程序中用標(biāo)簽指定的另一行:

  

goto Label1;

        Console.WriteLine(“
this
 won’t be executed”);

   Label1:

        Console.WriteLine(“Continuing execution from here”);

   goto語(yǔ)句有兩個(gè)限制:不能跳轉(zhuǎn)到像for循環(huán)這樣的代碼塊中,也不能跳出類(lèi)的范圍,不能退出try…catch塊后面的finally塊。

   break可以用于退出for、foreach、while、或do…while循環(huán)。

   continue只從循環(huán)的當(dāng)前迭代中退出,然后在循環(huán)的下一次迭代開(kāi)始重新執(zhí)行,而不是退出循環(huán)。

   return用于退出類(lèi)的方法,把控制返回方法的調(diào)用者。

6.       枚舉

枚舉是用戶定義的整數(shù)類(lèi)型,在聲明一個(gè)枚舉時(shí),要指定該枚舉可以包含的一組可接受的實(shí)例值。

public enum TimeOfDay

{

   Morning,Afternoon,Eveing

}


7.       數(shù)組

定義:int[] integers;

初始化:integers = new int[32];

所有的數(shù)組都是引用類(lèi)型,并遵循引用的語(yǔ)義

8.       命名空間

命名空間提供了一種組織相關(guān)類(lèi)和其它類(lèi)型的方式,它時(shí)一種邏輯組合,而不是物理組合。

namespace CustomerPhoneBookApp

{

  
using
 System;

   
public struct
 Subscriber

   
{

   }


}


命名空間可以嵌套,注意不允許在另一個(gè)嵌套的命名空間中聲明多部分的命名空間。

為了避免命名空間輸入的繁瑣,可以用using語(yǔ)句來(lái)解決。

using System;

using Wrox.ProCSharp;

命名空間也可以用別名來(lái)代替:using alias = NamespaceName;

9.       Main()方法

C#程序是從Main()方法開(kāi)始執(zhí)行的,該方法必須是類(lèi)或者結(jié)構(gòu)的靜態(tài)方法,且返回類(lèi)型必須是intvoid。

如果程序包含多個(gè)Main()方法,編譯器就會(huì)返回一個(gè)錯(cuò)誤,但是可以使用/main選項(xiàng),顯示的告訴編譯器把哪個(gè)方法作為程序的入口點(diǎn):

例如:csc MainExample.cs/main:Wrox.ProCSharp.Basics.MathExample

也可以為Main()方法傳送參數(shù):

public static int Main(string[] args)

{

}

編譯好之后,可以在執(zhí)行文件名后面加上參數(shù):

ArgsExample /a /b /c

10.   控制臺(tái)I/O

Console.ReadLine()從控制臺(tái)讀取一行文本

Console.Write()將指定的值寫(xiě)入控制臺(tái)窗口

Console.WriteLine()輸出的結(jié)果最后添加一個(gè)換行符

格式化顯示:

Console.WriteLine(“{0} plus {1} equals {2}”, i,j,i+j);

也可以指定寬度,{n,w} n是參數(shù)索引,w是寬度值,正值表示右對(duì)齊,負(fù)值表示左對(duì)齊

還可以使用格式字符串:

Console.WriteLine(“{0,9:c2}”,i);

最后,可以使用占位符來(lái)代替這些格式字符串:

double d = 0.234;

Console.WriteLine(“{0:#.00}”,d)

結(jié)果為:0.23

11. XML文檔說(shuō)明

///<summary>

///   The Add method allows us to add two integers

///</summary>

///<returns>Result of the addition(int)</returns>

///<param name=”x”>First number to add</param>

///<param name=”y”>Second number to add</param>

 

編譯:csc /doc:Math.xml Math.cs

12. C#預(yù)處理指令

   預(yù)處理指令不會(huì)轉(zhuǎn)化為可執(zhí)行代碼中的命令,但會(huì)影響編譯過(guò)程的各個(gè)方面。例如:可以使用預(yù)處理指令禁止編譯程序編譯代碼的某一部分。

   1#define#undef

     #define DEBUG 告訴編譯器存在給定名稱(chēng)的符號(hào)

     #undef DEBUG   刪除符號(hào)的定義

     必須把#define#undef放在C#源代碼的開(kāi)頭,在聲明要編譯的任何對(duì)象的代碼之前。

     #define本身沒(méi)有什么用,必須跟其它預(yù)處理指令結(jié)合使用。

   2#if,#elif,#else,#endif

     這些指令告訴編譯器是否要編譯某個(gè)代碼塊

     

int DoSomeWork(double x)

     
{

        
#if DEBUG


        Console.WriteLint(“x 
is ” + x);//這行代碼只有在定義了DEBUG后才會(huì)執(zhí)行

        
#endif

     }


     #elif(=else if)#else 指令都可以用在#if塊中,也可以嵌套#if

3#warning #error

     當(dāng)編譯器遇到它們時(shí),會(huì)分別產(chǎn)生一個(gè)警告或者錯(cuò)誤。如果遇到#warning,會(huì)給用戶顯示#warning指令后面的文本,之后編譯器繼續(xù)進(jìn)行。如果遇到#error,會(huì)給用戶顯示#error后面的文本,作為一個(gè)編譯錯(cuò)誤信息,然后會(huì)立即退出編譯,不會(huì)生成IL代碼。

4)#region和#endregion

     用于把一段代碼標(biāo)記為給定名稱(chēng)的一個(gè)塊,使代碼布局清晰明了

5)#line

     用于改變編譯器在警告和錯(cuò)誤信息中顯示的文件名和行號(hào)信息。這個(gè)指令用得不多。


該文章在 2017/2/7 18:53:21 編輯過(guò)
關(guān)鍵字查詢
相關(guān)文章
正在查詢...
點(diǎn)晴ERP是一款針對(duì)中小制造業(yè)的專(zhuān)業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國(guó)內(nèi)大量中小企業(yè)的青睞。
點(diǎn)晴PMS碼頭管理系統(tǒng)主要針對(duì)港口碼頭集裝箱與散貨日常運(yùn)作、調(diào)度、堆場(chǎng)、車(chē)隊(duì)、財(cái)務(wù)費(fèi)用、相關(guān)報(bào)表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點(diǎn),圍繞調(diào)度、堆場(chǎng)作業(yè)而開(kāi)發(fā)的。集技術(shù)的先進(jìn)性、管理的有效性于一體,是物流碼頭及其他港口類(lèi)企業(yè)的高效ERP管理信息系統(tǒng)。
點(diǎn)晴WMS倉(cāng)儲(chǔ)管理系統(tǒng)提供了貨物產(chǎn)品管理,銷(xiāo)售管理,采購(gòu)管理,倉(cāng)儲(chǔ)管理,倉(cāng)庫(kù)管理,保質(zhì)期管理,貨位管理,庫(kù)位管理,生產(chǎn)管理,WMS管理系統(tǒng),標(biāo)簽打印,條形碼,二維碼管理,批號(hào)管理軟件。
點(diǎn)晴免費(fèi)OA是一款軟件和通用服務(wù)都免費(fèi),不限功能、不限時(shí)間、不限用戶的免費(fèi)OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved