原创 算法:最長有效括號

題目描述: 給定一個只包含 ‘(‘和’)’ 的字符串,找出最長的包含有效括號的子串的長度。 方法一:棧 括號相關的問題首先可以嘗試使用 棧 這個數據結構去解決,至於原因,想一想應該不難理解,如果進來一個右括號,也就是 ‘)’,它

原创 MODBUS RTU協議中浮點數是如何存儲,讀到浮點數寄存器的數值如何轉換成所需的浮點數

浮點數保存的字節格式如下: 地址 +0 +1 +2 +3 內容 SEEE EEEE EMMM MMMM MMMM MMMM MMMM MMMM 這裏S 代表符號位,1是負,0是正 E 偏移127的冪,二進制階碼=(EEEEEEE

原创 c# 以換行(\r\n)拆分字符串

c# 以換行(\r\n)拆分字符串 字符串數組形式: string[] striparr = strip.Split(new string[] { “\r\n” }, StringSplitOptions.None); strip

原创 compare4過期解密

reg delete “HKEY_CURRENT_USER\Software\Scooter Software\Beyond Compare 4” /v CacheID /f 另外你可以添加定時任務,比如每隔3周自動執行該操作,

原创 算法:主宰這個世界的10大算法

任何定義明確的計算步驟都可稱爲算法,接受一個或一組值爲輸入,輸出一個或一組值。(《算法導論第3版》) 1 歸併排序(MERGE SORT)、快速排序(QUICK SORT)和堆積排序(HEAP SORT) 歸併排序算法,是目前爲

原创 C# 關於文件讀寫操作

20191016 一、讀寫txt文件 當文本的內容比較大時,我們就不要將文本內容一次性讀完,而應該採用流(Stream)的方式來讀取內容; .Net爲我們封裝了StreamReader類,它旨在以一種特定的編碼從字節流中讀取字符。

原创 C# 獲取本機電腦設備管理器的內容

首先在項目中添加Management 然後在頭文件中引用 using System.Management; 添加函數 public string getDevice() { StringBuilder sbDwv = new

原创 C#利用進程啓動程序

頭文件中添加 using System.Diagnostics; 判斷是否有該程序的服務 bool havedriver = false; Process[] sysProcess = Process.Ge

原创 C# 各種路徑(Path、Directory)

2019-10-15 // 獲取程序的基目錄。 System.AppDomain.CurrentDomain.BaseDirectory // 獲取模塊的完整路徑。 System.Diagnostics.Process.GetCu

原创 C# 子線程修改界面主線程控件值的解決辦法

利用委託即可 internal void bootloadBoxShow(string str) { Invoke(new MethodInvoker(delegate

原创 C# 通過註冊表查找已經安裝的軟件 並且在進程中打開此軟件

查找軟件的路徑 string strC2ProgPath = null; GetSoftWare(“XXX”, out strC2ProgPath); /// <summary> /// 軟件是否安轉

原创 C# 中2個問號的作用

變量定義中含有一個問號,意思是這個數據類型是NullAble類型的。(NullAble意思是可以爲空) 變量定義中含有兩個問號,意思是取所賦值??左邊的,如果左邊爲null,取所賦值??右邊的。

原创 C# 正嘗試在 OS 加載程序鎖內執行託管代碼。不要嘗試在 DllMain 或映像初始化函數內運行託管代碼,這樣做會導致應用程序掛起。

當我在窗體初始化的時候,調用了一個外部的dll時,它就不知什麼原因的 拋出一個“正試圖在 os 加載程序鎖內執行託管代碼。不要嘗試在 DllMain 或映像初始化函數內運行託管代碼”的異常,程序就卡掉了,在網上查了查,相關說明如下

原创 C#各種對話框操作(OpenFileDialog、FolderBrowserDialog )

20191017 文件打開對話框 var openFileDialog = new OpenFileDialog(); openFileDialog.Multiselect = true; openFileDialog.Title

原创 C#Convert用法 parse用法

C# 中 Convert 與 Parse 區別 (int):表示使用顯式強制轉換,是一種類型轉換,C#默認整型是int32,因此使用此方法轉成int 32位,不遵循四捨五入,只截取整數部分; (int)5.21 //輸