程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> 總結@ 在C# 中的用法,

總結@ 在C# 中的用法,

編輯:C#入門知識

總結@ 在C# 中的用法,


一 字符串中的用法

1。地球人都知道 C# 中 字符串常量可以以 @ 開頭聲名,這樣的優點是轉義序列“不”被處理,按“原樣”輸出,即我們不需要對轉義字符加上 \ (反斜扛),就可以輕松coding。如,

[csharp] view plaincopyprint?
  1. string filePath = @"c:\Docs\Source\a.txt"  // rather than "c:\\Docs\\Source\\a.txt"  

 

2。如要在一個用 @ 引起來的字符串中包括一個雙引號,就需要使用兩對雙引號了。這時候你不能使用 \ 來轉義爽引號了,因為在這裡 \ 的轉義用途已經被 @  “屏蔽”掉了。如,

[csharp] view plaincopyprint?
  1. @"""Ahoy!"" cried the captain."    // 輸出為: "Ahoy!" cried the captain.  

有點像SQL中的單引號常量處理方式:

[csharp] view plaincopyprint?
  1. DECLARE @msg varchar(100)  
  2. SET @msg = ''Ahoy!'' cried the captain.'  -- 輸出為: 'Ahoy!' cried the captain.  


3。@ 會識別換行符
其實這個特性,我不知道怎麼描述,只是偶然發現的,先看下面的代碼吧:

[csharp] view plaincopyprint?
  1. string script = @"  
  2.            <script type=""type/javascript"">  
  3.            function doSomething()  
  4.            {  
  5.            }  
  6.            </script>";  


安逸吧,在cs文件中寫js,結構就很清晰了,正常情況我們是這樣coding的:

[csharp] view plaincopyprint?
  1. string script2 =   
  2.             "<script type=\"type/javascript\">function doSomething(){}</script>";  
  3.   
  4. // or  
  5.   
  6. string script3 =  
  7.             "<script type=\"type/javascript\">" +  
  8.             "function doSomething(){ " +  
  9.             "}</script>";  



通常我們會選擇後者,因為js代碼一般比較長,或者方法體很大,或者需要連接其他變量,這樣結構比較清晰。

注意:如果“拼接”的次數很多,應該考慮使用StringBuilder了,有助於提高性能。

還有一種場景,也很常見,在程序中拼接 SQL 語句,如

[csharp] view plaincopyprint?
  1. private const string SQL_INS_USER = @"  
  2.             INSERT INTO t_User([UserName], [Password], Email)   
  3.                         VALUES(@UserName, @Password, @Email)";  


 

[csharp] view plaincopyprint?
  1.   

哈哈,這樣就像寫存儲過程一般,保持相當高的代碼清晰度。然而,我們需要關注一個問題:字符串長度看下面的測試代碼:

[csharp] view plaincopyprint?
  1. private const string SQL_INS_USER1 = @"  
  2.             INSERT INTO t_User([UserName], [Password], Email)   
  3.                         VALUES(@UserName, @Password, @Email)";  
  4.   
  5.         private const string SQL_INS_USER2 = @"INSERT INTO t_User([UserName], [Password], Email)   
  6.                         VALUES(@UserName, @Password, @Email)";  
  7.   
  8.         private const string SQL_INS_USER3 = @"INSERT INTO t_User([UserName], [Password], Email) VALUES(@UserName, @Password, @Email)";   
  9.   
  10.         static void Main(string[] args)  
  11.         {  
  12.             Console.WriteLine(SQL_INS_USER1.Length);    //  126   
  13.             Console.WriteLine(SQL_INS_USER2.Length);    //  112  
  14.             Console.WriteLine(SQL_INS_USER3.Length);    //  86  
  15.         }  


 


可以看到三個字符串長度分別相差了,14=126-112和26=112-86,注意觀察了,在代碼編輯器中,SQL_INS_USER1 中第一個換行符號之後,我縮進13個空格(INSERT之前),而
SQL_INS_USER2 中第一個換行符號之後,我縮進25個空格(VALUES之前),
那麼,加上一個換行符,剛剛好 14和26

My GOD!

如此編寫代碼,雖然提高了代碼的清晰度和簡便性,卻無行中帶來了另一個問題:字符長度!
很多場景下我們希望字符串越短越好,如,通過ADO.NET 發送 SQL 語句給數據庫執行。
所以還是慎用之!


二 標識符中的用法
在 C#  規范中, @  可以作為標識符(類名、變量名、方法名等)的第一個字符,以允許C# 中保留關鍵字作為自己定義的標識符。

[csharp] view plaincopyprint?
  1. class @class  
  2. {  
  3.    public static void @static(bool @bool) {  
  4.       if (@bool)  
  5.          System.Console.WriteLine("true");  
  6.       else  
  7.          System.Console.WriteLine("false");  
  8.    }     
  9. }  
  10. class Class1  
  11. {  
  12.    static void M() {  
  13.       cl\u0061ss.st\u0061tic(true);  
  14.    }  
  15. }  



注意,@ 雖然出現在標識符中,但不作為標識符本身的一部分。
因此,以上示例,定義了一個名為 class 的類,並包含一個名為 static 的方法,以及一個參數名為了 bool 的形參。

這樣,對於跨語言的移植帶來了便利。因為,某個單詞在 C#  中作為保留關鍵字,但是在其他語言中也許不是。


C語言實訓總結

在初學C語言的一個學期後,我們進行了C語言實訓階段,嘗試自己編寫一個比較復雜的程序系統。在為期兩周的時間中,我們同組的同學共同的感受是:C語言實訓和平時上課所接觸的程序是有很大不同的,所經受的考驗和克服的困難是平時所無法比擬的。好在同組的搭檔們精誠合作,分工明確,有問題共同解決,攻克了C語言實訓的復雜程序。在這裡,我作為其中的參與者,自然感觸良多。

剛開始接觸到C的時候,我已經學過一些有關VB的內容,這個在算法和思維上稍微有點幫助。回想本學期的學習,首先,最基本的,是C的數據格式,讓我們知道整數,浮點數以及字符常量在C中的運用。然後,在學會了數據轉化,以及熟練的可以對各種數據處理之後,我開始進行有關數據結構,像數組,結構體等的學習,因為有的東西從現有的知識來看都是非常簡單的,還沒有聯系到指針等等一些復雜的概念。可是,僅僅學會這些是遠遠不夠的,C語言中,還有很多更加經典、重要、實用的知識。

說說函數。雖說很多程序語言都有函數這一內容,但我覺得C語言的函數是最有魅力的了。學習函數的方法是比較簡單的,只有兩個字“牢記”,即:牢記函數的功能,牢記函數的用途以及如何輸入輸出。函數從本質上講是一段通用程序,用它可以幫助我們節約很多編程的時間,學習C語言的“高人”都說,一個聰明的編程者在編寫程序前往往總是先找自己所編寫的程序中有多少是可以用函數來代替的。比如,大家可以作一個比較字符串的實驗,用C語言中的strcmp()函數只要一句話,而自己編寫的話,30句都很難實現,可想而知函數的實用和快捷。在我們C語言實訓的代碼中,函數更是得到了充分的應用,可以說,實訓題目的復雜代碼,就是用無數個函數的調用和嵌套積累出來的。

要注意的是,有的同學剛剛開始的時候,都是被一些大的程序激勵的,所以當開始的時候看到繁瑣的數據轉化和簡單的算法,都覺得很無聊,都想自己做幾個自己滿意的程序來看看,雖然這種想法很好,但是,我們說,沒有基礎,純粹是搬照一些現成設計方法,是不足取的。要知道,程序設計講究的是個人的思維的,假如剛開始就被一些現成的思想束縛住,以後就會覺得很無趣。
  我們知道,指針其實是C語言的靈魂,許多的數據結構在我們學到這裡之前都可以說是精通了。所以我們的任務就是,讓數據結構在指針中運行。當然,剛剛開始接觸到這些新的東西,是一件非常痛苦的事情,所以我們一定要用非常形象的思維去看待指針,不能太固化。所以,新的東西,比如結構體在指針中的表現方法,數組及多維數組在結構體中的運用,都一點一點的加了進來,同時豐滿了我們對原來C的數據機構,數據表示的理解。當我們完成了這三步的學習,我們已經可以自豪的說,我們的基礎都扎實了,可以進一步的學習有關算法,設計概念等等深層次的東西了。
  但是,指針,結構體,這些太抽象的東西,在學習C語言的時候我們就有點“似懂非懂”,可是在眼下的C語言實訓中,像這麼重要的C語言知識,一定要達到能熟練掌握,實際運用的程度。在實訓的大程序中,結構體在指針中的表現方法,數組及在結構體中的運用等具體的技術環節,都得到了體現,不會指針,我們的工作是沒法展開的。所以,在實訓期間,大家在鞏固基本知識的基礎上,逐塊攻克實訓課題,克服了困難,自信心得到了提高。

最後,談談我們組的程序軟件。商店商品管理系統,是一個比較利於應用,解決實際問題,方便實際管理的程序。設計代碼比較復雜,結構比較嚴謹。在程序編寫的1周左右的時間裡,組員們遇到了上述的困難,包括程序設計構思,甚至是指針等某些知識點的欠缺,導致的工作中出現的困難。但是,當大家一起團結協作,解決了這些困難之後,發現自己也可......余下全文>>
 

C語言知識總結

c語言概要
第一章、 概述
1、 c語言的基本知識
1.1、 c語言的執行步驟
編輯-程序代碼的錄入,生成源程序*.c
編譯-語法分析查錯,翻譯生成目標程序*.obj
(語法或邏輯錯誤,從第一個開始改,變量定義,語句格式,表達式格式等)
鏈接-與其他目標程序或庫鏈接裝配,生成可執行程序*.exe
執行
1.2、 main函數的基本知識
main()函數的位置
c程序總是從main( )函數開始執行
一個c程序可以包含一個主函數,即main()函數;也可以包含一個main()函數和若干其它函數
1.3、 c程序的結構
函數與主函數
程序由一個或多個函數組成
必須有一個且只能有一個主函數main()
程序執行從main開始,在main中結束,其他函數通過嵌套調用得以執行
程序語句
C程序由語句組成
用“;”作為語句終止符
注釋
//

/* */ 為注釋,不能嵌套
不產生編譯代碼
1.4、c 程序書寫的規則
習慣用小寫字母,大小寫敏感
不使用行號,無程序行概念:通常一個語句占一行
可使用空行和空格
常用鋸齒形的書寫格式;同一層次結構的語句上下對齊。
第二章、基本數據類型與運算
2.1、c程序的數據類型
注意類型和變量含義的不同(類型是固定好的名字,變量是自己起的名字)
變量占用的存儲空間
數據類型
基本類型:整型、字符型、浮點型(單精度型,雙精度型)
構造類型:數組類型、結構體類型
指針類型
空類型
注意基本類型賦初值的方式
基本數據類型的表示形式
整形數據
十進制:以非0數字開頭,如:123,-9,0
八進制;以0數字開頭,如:0123,067
十六進制:以0x開頭,如:0x123,0xff
實型數據
十進制:必須帶小數點,如:123.0,-9.0
指數形式;如:1.23E3,0.9e-2,5e2
字符型數據
普通字符:如:’a’,’2’,’H’,’#’
轉義字符:如:’\n’,’\167’,’\xlf,’\\’
(實現幾列的對齊:指定寬度。如%100\ ‘\t’制表位)
(字符串長度。“abc\n\t\\” strlen 6; sizeof 7)
基本數據類型的存儲長度
整型
Int 字節數 2 位數 16 數的表示范圍 -32768—32767
Short 2 16 -32768—32767
Long 4 32 -2147483648—2147483647
實型
Float 4 32 3.4e-38---3.4e38
Double 8 64 1.7e-308---1.7e308
字符型
Char 1 8 -128----127
2.2、標識符命名規則
C語言標志符命名規則
標識符有數字,字母,下劃線組成
標識符的首字符必須為字母和下劃線
標識符不能為c語言的保留字(關鍵字)
如:auto extern sizeof float static case for struct char goto switch continue in typedef const if union default long ......余下全文>>
 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved