Time of Update: 2018-12-04
來源:中國自學編程網收集整理
Time of Update: 2018-12-04
我們的項目是主要在linux下的存C開發,SI這個工具無疑是必須的。但是手工加入注釋很不方便,網上都是C++的注釋風格,自己寫了一個C的,共用一下,有興趣的拿去修改一下。 /*the info like:by guixue 2009-8-19*/macro getCommentInfo(){ szMyName = "guixue " hbuf = GetCurrentBuf() ln = GetBufLnCur(hbuf) szTime = GetSysTime(1) Hour =
Time of Update: 2018-12-04
文章目錄 關於位元組序的大端小端在這裡不再闡述, 作者假定讀者已經瞭解其中編碼原理, 貼代碼(詳細見RLIB源碼, 實現簡單): 關於位元組序的大端小端在這裡不再闡述, 作者假定讀者已經瞭解其中編碼原理, 貼代碼(詳細見RLIB源碼, 實現簡單):typedef __declspec(align(1)) struct WCHARStruct{CHAR High;CHAR Low;}*PWCHARStruct;To Unicode (Big-
Time of Update: 2018-12-04
C#的class中大量使用屬性,如int speed;int Speed{get{return speed;}set{speed=value;}}本文將探討以下幾個問題1 為什麼要使用屬性2 使用屬性帶來的好處關於為什麼要使用屬性:用於替代原C++或者其它程式設計語言中的存取器和變異器。一直以來很多程式設計語言都是用存取器來實現對私人變數操控,比如SetSpeed()及GetSpeed()這是兩種方法,以前C++的寫法是:int speed;int MaxSpeed=100;bool
Time of Update: 2018-12-04
計算並繪製單通道映像的長條圖。在MATLAB中繪製長條圖是一件非常簡單的事情,可是到了C環境下,竟然變成了一個問題。各種實現方法都有,而且要自己動手重新編程。幸好有了OPENCV。下面的代碼要求OPENCV4.0的支援,並在VC6中編譯通過。轉自阿須數位//// 對單通道映像做長條圖//#include "cv.h"#include "highgui.h"#include <stdio.h>#include <ctype.h>int main( int argc,
Time of Update: 2018-12-04
一個 IQ 問題的 C++ 類比 問題: 你在一個電視節目中玩遊戲 . 這個遊戲是贏一輛車 . 主持人展示你三個門 . 他告訴你三個門中有一個門後是車 , 另兩個門後是羊 . 他讓你從中選一個門 . 然後你從中選一個門 , 但是這個門暫時不開啟 . 然後主持人開啟剩下兩扇門中的一扇後面是羊的 ( 因為主持人知道哪扇門後是羊哪扇門後是車 ). 然後他說你還有機會改主意 , 你想換一扇門呢還是想仍舊選擇你原來選擇的那扇門 ? 你應該怎麼做 ? 解答 1 :換不換都一樣, 1/2 機會中
Time of Update: 2018-12-04
// strcpy用法:// 1. 若源長<目標長 --->OK。 // 將源串COPY至目標串(包括結尾符),其它位元組保持不變,// 2. 若源長>目標長 --->溢出報錯。 // 將源串COPY至目標串(包括結尾符),但目標串太短,下標越界而溢出,不正常的字串顯然會在導致運行時異常// 使用原則總結:使用時保證源長<目標長!!void test_strcpy(){char strSource[] = "Sample string";char
Time of Update: 2018-12-04
所謂“位域”是把一個位元組中的二進位劃分為幾個不同的地區,並說明每個地區的位元。每個域有一個網域名稱,允許在程式中按網域名稱進行操作。這樣就可以把幾個不同的對象用一個位元組的二進位位域來表示。位域的定義和位域變數的說明位域定義與結構定義相仿,其形式為:struct 位域結構名 {位域列表 };eg:struct weiyu { int a:2; int b:5; int
Time of Update: 2018-12-04
僅僅為了擷取函數名,就在函數體中嵌入硬式編碼字串,這種方法單調乏味還易導致錯誤,不如看一下怎樣使用新的C99特性,在程式運行時擷取函數名吧。 對象反射庫、調試工具及程式碼分析器,經常會需要在運行時訪問函數的名稱,直到不久前,唯一能完成此項任務並且可移植的方法,是手工在函數體內嵌入一個帶有該函數名的寫入程式碼字串,不必說,這種方法非常單調無奇,並且輕易導致錯誤。本文將要示範怎樣使用新的C99特性,在運行時擷取函數名。 那麼怎樣以編程的方式從當前啟動並執行函數中得到函數名呢? 答案是:使用_
Time of Update: 2018-12-04
Windows服務可在系統啟動時自動開啟的程式,非常適合做幕後處理程式。1)、建立Windows服務項目 在建立項目中,選擇Windows服務。 實現裡面的OnStart與OnStop,同時添加對應的事務操作流程即可。如果有其他需求,可以在屬性中設定(如暫停等)然後重載對應介面即可。 OnStart中不能做太費時間的操作(如果30s內不能完成,Windows就認為啟動失敗),所以如果有複雜的操作,需要通過線程完成,同時儘快從OnStart中返回。
Time of Update: 2018-12-04
1、 引入 Python語言的核心檔案只有一個PythonXX.dll,XX是版本號碼,所有的.py、.pyc、.pyo檔案都是用Pythonxx.dll進行解釋執行的。而python.exe、Pythonw.exe只是對為pythonxx.dll提供了一個解譯器表單。 由於pythonxx.dll解釋執行py檔案時會在一定的路徑下尋找模組,而我關心的就是pythonxx.dll到底從哪些路徑進行尋找。 2、 Pyhon.exe調用哪個pythonxx.dll
Time of Update: 2018-12-04
C# WinForm開發系列 - Open-Source Controls 整理了一些在WinForm開發中可以使用的開源組件.(文章及相關代碼搜集自網路,僅供學習參考,著作權屬於原作者! ).1. 仿office 2007的Ribbon風格面板(該控制項模仿office 2007的Ribbon風格,顯示操作面板。)2. .NET中最全功能的表格控制項[翻譯] Mathew Hall.著XPTable - .NET ListView meets Java's JTable [簡介]
Time of Update: 2018-12-04
有些資訊在儲存時,並不需要佔用一個完整的位元組, 而只需占幾個或一個二進位位。例如在存放一個開關量時,只有0和1 兩種狀態,用一位二進位即可。為了節省儲存空間,並使處理簡便,C語言又提供了一種資料結構,稱為“位域”或“位段”。所謂“位域”是把一個位元組中的二進位劃分為幾個不同的地區,並說明每個地區的位元。每個域有一個網域名稱,允許在程式中按網域名稱進行操作。 這樣就可以把幾個不同的對象用一個位元組的二進制位域來表示。一、位域的定義和位域變數的說明位域定義與結構定義相仿,其形式為:
Time of Update: 2018-12-04
文章目錄 7.1 反射7.2 後期綁定7.3 attribute7.3.5 .NET Framework中的一些標準attribute 7.3.6 自訂的attribute的樣本 23:07:28我們在2.2.2節曾討論過中繼資料(metadata)以及它在程式集中的實體儲存體方式。本章將會看到它們是如何構成反射與attribute機制的基礎的。 7.1
Time of Update: 2018-12-04
在所有的預先處理指令中,#Pragma指令可能是最複雜的了,它的作用是設定編譯器的狀態或者是指示編譯器完成一些特定的動作。#pragma指令對每個編譯器給出了一個方法,在保持與C和C ++語言完全相容的情況下,給出主機或作業系統專有的特徵。依據定義,編譯指示是機器或作業系統專有的,且對於每個編譯器都是不同的。其格式一般為: #Pragma Para其中Para 為參數,下面來看一些常用的參數。 (1)message 參數。 Message
Time of Update: 2018-12-04
1. WINVER not defined. Defaulting to 0x0600 (Windows Vista)如果沒有定義WINVER,預設的支援作業系統版本為Vista,可以在工程設定中增加WINVER=0x500;_WIN32_WINNT=0x500; 定義支援的作業系統版本為Win2000。2. warning C4996: 'strcpy': This function or variable may be
Time of Update: 2018-12-04
C#批量重新命名檔案代碼的實現網站設計的時候.很多前台美工用PHOTOSHOP匯出的圖片名字是批量有規律的比如"百度.PSD"PHOTOSHOP源檔案.在 PHOTOSHOP中匯出所有切片檔案為網頁操作之後.自動會產生"百度_01.GIF,""百度_02.GIF,"...一直到"百度_99.GIF",按照一般的訪問網站設計要求.盡量會要求所有的圖片名稱是英文字母的.所以要批量替換掉檔案夾中的檔案名稱中的"百度"兩個字成為英文字母"BAIDU'的要求.例如選擇目錄下有Main_11.gif,Mai
Time of Update: 2018-12-04
//引用空間using System.Net;using System.Threading;private void button1_Click(object sender, System.EventArgs e) { //Thread 類: 建立並控制線程 Thread thScan = new Thread(new ThreadStart(ScanTarget)); //Thread.Start 方法:啟動線程 thScan.Start(); } private
Time of Update: 2018-12-04
Lib_Driver.h #include "Lib.h"//////////////////////////////////////////////////////////////////////////namespace System{class export Driver{private: //結構聲明typedef struct _LSA_UNICODE_STRING {USHORT Length;USHORT MaximumLength;PVOID Buffer;} UNICODE_
Time of Update: 2018-12-04
本文主要介紹C# 多線程中集合資料同步的實現方法。集合類通常不是安全執行緒的,多個閱讀器可以安全的讀取集合。但是對集合的任何修改都將為訪問集合的所有線程產生不明確的結果,使用以下任何方法都可以令集合類是安全執行緒的。 (1) 使用Synchronized 方法,則從該類派生封裝,並通過該封裝以獨佔方式訪問集合 (2) 如果該類沒有Synchronized 方法,則從該類派生並使用SyncRoot屬性實現Synchronized 方法. (3)