C 基礎核心

2021-09-30 09:41:03 字數 1401 閱讀 8903

1.第乙個c#程式: 命令列上編譯.cs**,命令:csc

2.c#強調安全性,所有變數使用之前必須初始化。

4.預定義的資料型別:值型別和引用型別

值型別儲存在棧中,引用型別儲存在託管堆中

例子:// i and j are both type of int 

i=20;

j=i;  //這表示記憶體(棧)中兩處地方放了20;

//下面的**,實際只建立了乙個物件,有兩個指向該物件的引用變數x,y   結果是:30 50 

vector x,y;

x=new vector();

x.value=30;

y=x;

console.writeline(y.value);

y.value=50;

console.writeline(x.value);  

乙個比較特殊的引用型別是string  

例子:string si="a string";

string s2=s1;

console.writeline(s1);

console.writeline(s2);

s1="another string";

console.writeline(s1);

console.writeline(s2);

結果:a string 

a string 

another string 

a  string         //在改變s1的值的時候,是在堆上又開闢了乙個新物件,這與運算子過載有關

5. @對轉義字元的解釋

6.c#可以使用字串作為switch case 的判斷

7.foreach 不能改變遍歷的項,要改變用for()

8.命名控制項是一種邏輯組合,提供了一種組織相關類和型別的方式

9. main() 方法,必須是類的靜態方法,返回值只能是void  int ,修飾符不重要即使是private也能行

如果有多個main()方法,可以使用/main 後面跟main()方法的類的全名

10.c# 預處理命令

#define  告訴編譯器存在給定名稱   #define debug

#undef  告訴編譯器刪除給定名稱

#if  #elif #else #endif

當編譯器遇到#if的時候,首先檢查相關的符號是否存在,如果符號存在就編譯裡面的,否則編譯器忽略#endif 之間的**

#waring #error

當編譯器遇到他們時候,會分別返回警告和錯誤

#waring 提示警告,提示完畢繼續編譯

#error 提示錯誤,結束編譯

#region #endregion 不影響編譯過程,可以改善布局

#pragma 可以抑制或還原編譯警告,他可以在類或方法中執行

Linux核心基礎

linux系統執行的應用程式通過系統呼叫來與核心通訊。應用程式通常呼叫庫函式 比如c庫函式 再有庫函式通過系統呼叫介面,讓核心帶其完成各種不同的任務。下面這張圖顯示的就是應用程式,核心和硬體之間的關係 在任何時間點上我們都可以將每個處理器的活動概括為以下三者之一 1.執行於使用者空間,執行使用者程序...

核心開發基礎

1.程序管理 程序是執行程式的乙個例項,核心負責程序的建立 銷毀 程序 排程 程序間通訊等 note 核心本身不是乙個程序,而是程序的管理者 2.記憶體管理 管理程序的位址空間,使用者態下 區 資料區 私有棧 核心態 核心的 區 核心的資料區 核心棧。3.檔案系統支援 4.裝置控制 5.中斷和異常響...

Linux核心基礎

linux系統執行的應用程式通過系統呼叫來與核心通訊。應用程式通常呼叫庫函式 比如c庫函式 再有庫函式通過系統呼叫介面,讓核心帶其完成各種不同的任務。下面這張圖顯示的就是應用程式,核心和硬體之間的關係 在任何時間點上我們都可以將每個處理器的活動概括為以下三者之一 1.執行於使用者空間,執行使用者程序...