最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

淺談C#中[]的幾種用法

 更新時間:2023年01月28日 09:50:07   作者:迪迦 ? 奧特曼  
本文主要介紹了淺談C#中[]的幾種用法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

一、導(dǎo)入外部DLL函數(shù)

[DllImport(“kernel32.dll”)]這叫引入kernel32.dll這個動態(tài)連接庫。這個動態(tài)連接庫里面包含了很多WindowsAPI函數(shù),如果你想使用這面的函數(shù),就需要這么引入。舉個例子:

[DllImport(“kernel32.dll”)]
private static extern void FunName(arg,[arg]);

extern 作用:標(biāo)識這個變量或者函數(shù)定義在其他文件 ,提示編譯器遇到此變量的時,在其他模塊里尋找,這里是在提供的動態(tài)庫里找
示列代碼:

using System;
using System.Text;
using System.Runtime.InteropServices;
namespace Windows.Help
{
    public partial class SystemInfo
    {
        [DllImport("kernel32")]
        public static extern void GetWindowsDirectory(StringBuilder WinDir, int count);
        [DllImport("kernel32")]
        public static extern void GetSystemDirectory(StringBuilder SysDir, int count);
        public static void Main () {
            const int nChars = 128;
            StringBuilder Buff = new StringBuilder(nChars);
            GetWindowsDirectory(Buff, nChars);
            String t = "Windows路徑:" + Buff.ToString();
            System.Console.WriteLine(t);
        }
    }
}

在這里插入圖片描述

二、結(jié)構(gòu)體時表明屬性

[StructLayout(LayoutKind.Sequential) ][StructLayout(LayoutKind.Explicit)] ,首先介紹一下 結(jié)構(gòu)體和類的區(qū)別 :類是按引用傳遞 結(jié)構(gòu)體是按值傳遞
進入正題:

結(jié)構(gòu)體是由若干成員組成的.布局有兩種
1.Sequential,順序布局,比如

struct S1{
  int a;
  int b;
}

那么默認情況下在內(nèi)存里是先排a,再排b
也就是如果能取到a的地址,和b的地址,則相差一個int類型的長度,4字節(jié)

[StructLayout(LayoutKind.Sequential)] 
struct S1
{
  int a;
  int b;
}

這樣和上一個是一樣的.因為默認的內(nèi)存排列就是Sequential,也就是按成員的先后順序排列.
2.Explicit,精確布局
需要用FieldOffset()設(shè)置每個成員的位置
這樣就可以實現(xiàn)類似c的公用體的功能

[StructLayout(LayoutKind.Explicit)] 
struct S1
{
  [FieldOffset(0)]
  int a;
  [FieldOffset(0)]
  int b;
}

這樣a和b在內(nèi)存中地址相同

到此這篇關(guān)于淺談C#中[]的幾種用法的文章就介紹到這了,更多相關(guān)C# []用法內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:

相關(guān)文章

最新評論

宣恩县| 马公市| 会泽县| 肇州县| 霍城县| 芦山县| 张家界市| 南江县| 威海市| 思茅市| 惠安县| 甘泉县| 道真| 托克逊县| 卫辉市| 姚安县| 芦山县| 凤台县| 绥中县| 萍乡市| 宝应县| 横峰县| 尼玛县| 林州市| 固镇县| 锡林郭勒盟| 许昌县| 沈丘县| 白河县| 通辽市| 星座| 永顺县| 庆安县| 玛曲县| 南乐县| 龙门县| 高碑店市| 东兰县| 新绛县| 清新县| 莫力|