C 基礎知識整理 C 基礎(1)

2021-09-03 08:45:15 字數 3187 閱讀 7112

c#基本結構

(1)、變數定義

;

例,myfirstclass myfirstclass;

(2)、如何變數的初始化

int a = 0;

string str=string.empty;

int init = a*2;

(3)、變數的作用域

首先應該弄清楚private,protected、internal和public的各自作用域。

private-完全私有,只有在本類中才能呼叫,子類或其它類均不能呼叫,繼承時,子類也不能繼承private的屬性或方法。

protected-和private一樣,但區別在於,protected中子類可以訪問並繼承成員和方法。

internal-公開的,在同乙個程式集中都可以訪問,其它程式集則不可以訪問。

public-完全公開的,只要在乙個專案中都可以訪問,不過不同的程式集的話,需要引用其所在的程式集。

那麼由這些型別宣告的變數的作用域與它們的作用範圍一樣;

一般的變數的作用域如下:

a、變數所屬類在某個作用域,屬性或方法也在作用域中。

b、區域性變數的作用域,宣告該變數的塊語句或方法結束的大括號之前。

(4)、常量

在宣告變數時,在變數前面加上const 關鍵字就可以把該變數指定為乙個常量。

注意:a 常量必須在宣告的時候就初始化,而且其賦值後就不能再更改了。

b 常量總是靜態(static)的,不必在宣告常量時新增static關鍵字。

(5)字串處理

字串處理應該會用的比較多。常用有如下:

string teststring = @"hello,world!";

teststring.substring(0, 1);

teststring.trim();

teststring.trimend('\n');

teststring.trimstart('0');

還有諸於,contains,startwith,endwith的等等,在vs中.就可以看到所有的方法和屬性。

(6)使用正規表示式

正則在專案中應用還是比較多的,可參考如下文章:

正則字元描述:

常用正則:

(7)、什麼是cts型別?

乙個給定的程式集可能包含任意數量的不同"型別"。在.net領域裡,型別(type)是乙個一般性的術語,它指的是集合裡的任意乙個成員。當用支援.net的語言構建解決方案時,很有可能要與這些型別打交道。例如,程式集可能定義了乙個類,它又實現了一些介面。或許其中某個介面方法採用列舉型別作為輸入引數,而在呼叫時返回乙個結構。

cts(公共型別系統)是乙個正式的規範,它規定了型別必須如何定義才能被clr承載。通常,只有那些建立針對.net平台的工具或編譯器的人才對cts的內部工作非常關心。但是,對於所有.net程式設計人員來說,學習如何在自己使用的語言中使用由cts定義的5種型別,是非常重要的。這裡簡單概括一下。

每一種支援.net的語言至少要支援類型別(class type)的概念,這是物件導向程式設計(oop)的基礎。類可能由很多成員(諸如屬性、方法和事件)和資料(字段)組成。在c#中,使用class關鍵字來宣告類:

// c#類型別。

class calc

}表 cts類型別

類的特徵

在生命週期裡的意義

類是否被「密封」

密封類不能作為其他類的基類

類實現任何介面了嗎

介面是抽象成員的集合,它在物件和物件的用

戶間提供乙個契約。cts允許類或結構實現任

何數目的介面

類是具體的還是抽象的

抽象類是不能直接建立的,但是可以用來為派

生型別定義公共的行為。具體類可以直接建立

這個類的可見性是什麼

每個類必須設定可見性。基本上,可見性定義了

該類是被外部程式集使用,還是僅能在定義了它

的程式集中使用

(8) 資料型別如何分類以及各個資料型別範圍?

(9)操作符

括號操作符

格式()

點操作符

格式 (e.i)

其中e是基本表示式或者預定義型別,i是乙個識別符號。c++裡除了"."之外還有"::" "->",c#裡用點操作符來代替。比如乙個類t有成員變數m,在c++裡用t::m來引用,c#裡用t。m來引用。另一點不同的是,c#裡預定義型別也是從object類派生出來的,因此也定義了成員變數,比如,i是乙個short型別的變數,那麼i。toint()操作將返回乙個int型別的值。

字尾加減操作符

格式:p++;p--; ++p; --p;

結果是給變數p加1或減1

new操作符

格式:a, new 型別(引數列表)

b,new 陣列型別初始化列表

c,new 代表型別(表示式)

typeof操作符

該操作返回乙個型別對應的system。type,如:

typeof(int); typeof(system。int32); typeof(string);

各自的結果為int32,int32,string。typeof只對型別操作,不能對變

量操作,例如,"int i;typeof(i);"是不合法的

sizeof操作符

該操作可獲得乙個型別所占用的空間大小,以位元組為單

位。該操作符用在unsafe模組中,如

unsafe

或者在呼叫該操作符的函式中使用該字首。

單目操作符

(1)+-操作

(2)邏輯非:!(表示式)

(3)位非:~(表示式)

(4)強制型別轉換: (t) 表示式

關係運算子

==,!=,,=, is

is用來判斷乙個變數是否是某一型別,例如,s is string

位邏輯操作符

&(位與),|(位或),^(異或)。可以對整數,布林,和枚

舉型別進行這三種操作。

條件邏輯操作符

包括&&(與)和||(或)

條件運算子

b x:y

b為真,結果是x,否則是y

C 面試基礎知識整理(1)

檔案重定義 條件編譯 github c 面試基礎知識總結 預處理,根據檔案中的預處理指令來修改原始檔的內容。如 include指令,作用是把頭檔案的內容新增到.cpp檔案中,產生.ii檔案,編譯,將其翻譯成等價的中間 或彙編 產生彙編檔案 s檔案 彙編,把組合語言翻譯成目標機器指令,產生目標檔案 o...

C 基礎知識整理

在c 98中,有63個關鍵字。不能遺漏標準名稱,任何不帶標準名稱來說關鍵字個數都是耍流氓 1.定義命名空間,需要用到namespace關鍵字,後面跟命名空間的名字,然後接 中即為命名空間的成員。2.命名空間的使用 namespace n int main using n b int main usi...

C 基礎知識整理 基礎知識(2) 類

類,是物件導向語言的基礎。類的三大特性 封裝 繼承 多型。最基本的特性就是封裝性。程式設計師用程式描述世界,將世界的所有事物都看成物件,怎麼描述這個物件?那就是類了。也就是用類來封裝物件。用書上的話說,類是具有相同屬性和行為的物件的抽象。寶馬汽車 別克汽車 五菱之光汽車.基本具有相同的屬性和行為,所...