Time of Update: 2018-12-06
Javascript中引用(與c#表現很一致) js既然可以作為物件導向的程式設計語言,也具有面向對對象語言的特性這裡說說引用的特性 在js中可以使用引用和c#語言表現的很一致。執行個體1:var obj1 = new Object()var obj2 = obj1;obj1.name="hello world";alert(obj2.name == obj1.name)//會顯示是true 執行個體2:var item1 = new Array('a','b','c');var item2 =
Time of Update: 2018-12-06
前幾天處理一個比較有意思的需求,客戶要求在螢幕滾動顯示一些提示資訊,而同時還要考慮到客戶做交易時的螢幕重新整理問題,螢幕重新整理後滾動資訊不能重新開始,而是繼續重新整理前的操作。這樣一來就無法使用javascript的走馬燈【marquee】效果了。為了不對已有程式做太大改動,無奈之下只好寫一外掛,專門做滾動字幕顯示。現將源碼公開,以方便有相同需要的朋友。該程式設計有幾點需要注意:(1)建立Form時應該override CreateParams CreateParamsView Code
Time of Update: 2018-12-06
///系統引用using System.Data;using System.Data.OleDb;using System.Data.SqlClient;/// <summary>/// 必需的設計器變數。/// </summary>private System.ComponentModel.Container components = null;private System.Data.DataSet myDataSet;c#本地MDB資料庫連接private void
Time of Update: 2018-12-06
概述 C語言的記憶體模型基本上對應了現在von Neumann(馮·諾伊曼)電腦的實際儲存模型,很好的達到了對機器的映射,這是C/C++適合做底層開發的主要原因,另外,C語言適合做底層開發還有另外一個原因,那就是C語言對底層操作做了很多的的支援,提供了很多比較底層的功能。 下面結合問題分別進行闡述。 問題:移位操作 在運用移位操作符時,有兩個問題必須要清楚: (1)、在右移操作中,騰空位是填 0
Time of Update: 2018-12-06
第4章 運算式和基本語句讀者可能懷疑:連if、for、while、goto、switch這樣簡單的東西也要探討編程風格,是不是小題大做?我真的發覺很多程式員用隱含錯誤的方式寫運算式和基本語句,我自己也犯過類似的錯誤。運算式和語句都屬於C++/C的短語結構文法。它們看似簡單,但使用時隱患比較多。本章歸納了正確使用運算式和語句的一些規則與建議。4.1 運算子的優先順序C++/C語言的運算子有數十個,運算子的優先順序與結合律如表4-1所示。注意一元運算子 + - *
Time of Update: 2018-12-06
一、#i nclude "filename.h"和#i nclude <filename.h>的區別#i nclude "filename.h"是指編譯器將從當前工作目錄上開始尋找此檔案#i
Time of Update: 2018-12-06
第5章 常量常量是一種標識符,它的值在運行期間恒定不變。C語言用 #define來定義常量(稱為宏常量)。C++ 語言除了 #define外還可以用const來定義常量(稱為const常量)。5.1 為什麼需要常量
Time of Update: 2018-12-06
調用 IE: System.Diagnostics.Process myProcess = new System.Diagnostics.Process(); myProcess.StartInfo.FileName = "iexplore.exe"; myProcess.StartInfo.Arguments = " http://www.net0and1.com/"; myProcess.Start(); 調用預設瀏覽器: string target=
Time of Update: 2018-12-06
用變數a給出下面的定義 a) 一個整型數 b)一個指向整型數的指標( A pointer to an integer) c)一個指向指標的的指標,它指向的指標是指向一個整型數( A pointer to a pointer to an intege)r d)一個有10個整型數的數組( An array of 10 integers) e) 一個有10個指標的數組,該指標是指向一個整型數的。(An array of 10 pointers to integers) f)
Time of Update: 2018-12-06
在C#中調用VC寫的OCX控制項,有時會碰到一些很奇怪的問題,比如運行時程式報錯:(8000ffff) : "Catastrophic failure".具體什麼原因導致?以下以一個簡單的OCX為例(簡稱APT.ocx)。APT.ocx在VB以及VC中使用沒有問題,但在C#中使用就很奇怪,具體現象如下:註冊APT.ocx後,直接在C#工程中引用該控制項,在調用該控制項提供的方法時程式報錯:(8000ffff) : "Catastrophic
Time of Update: 2018-12-06
1、ArrarList 轉換為 string[] : ArrayList list = new ArrayList(); list.Add("aaa"); list.Add("bbb"); //轉換成數組 string[] arrString = (string[])list.ToArray(typeof( string)) ; 2、string[] 轉換為 ArrarList : ArrayList list = new ArrayList(new string[]
Time of Update: 2018-12-06
問題:記憶體使用量 有人寫了一個將整數轉換為字串的函數:char *itoa (int n){ char retbuf[20]; sprintf(retbuf, "%d", n); return retbuf;} 如果我調用這個函數:char *str5 = itoa(5),str5會是什麼結果呢? 答案分析: 答案是不確定,可以確定的是肯定不是我們想要的 “5”。
Time of Update: 2018-12-06
不同於一般形式的軟體編程,嵌入式系統編程建立在特定的硬體平台上,勢必要求其程式設計語言具備較強的硬體直接操作能力。無疑,組合語言具備這樣的特質。但是,歸因於組合語言開發過程的複雜性,它並不是嵌入式系統開發的一般選擇。而與之相比,C語言--一種"進階的低級"語言,則成為嵌入式系統開發的最佳選擇。筆者在嵌入式系統項目的開發過程中,一次又一次感受到C語言的精妙,沉醉於C語言給嵌入式開發帶來的便利。 圖1給出了本文的討論所基於的硬體平台,實際上,這也是大多數嵌入式系統的硬體平台。它包括兩部分: (
Time of Update: 2018-12-06
概述 C語言中有一種長度不確定的參數,形如:"…",它主要用在參數個數不確定的函數中,我們最容易想到的例子是printf函數。 原型:int printf( const char *format [, argument]... ); 使用例:printf("Enjoy yourself everyday!\n");printf("The value is %d!\n", value);
Time of Update: 2018-12-06
版式雖然不會影響程式的功能,但會影響可讀性。程式的版式追求清晰、美觀,是程式風格的重要構成因素。</P><P>可以把程式的版式比喻為“書法”。好的“書法”可讓人對程式一目瞭然,看得興緻勃勃。差的程式“書法”如螃蟹爬行,讓人看得索然無味,更令維護者煩惱有加。請程式員們學習程式的“書法”,彌補大學電腦教育的漏洞,實在很有必要。</P><P>2.1
Time of Update: 2018-12-06
述 Joel Spolsky認為,對指標的理解是一種aptitude,不是通過訓練就可以達到的。雖然如此,我還是想談一談這個C/C++語言中最強勁也是最容易出錯的要素。 鑒於指標和目前電腦記憶體結構的關聯,很多C語言比較本質的特點都孕育在其中,因此,本篇和第六、第七兩篇我都將以指標為主線,結合在實際編程中遇到的問題,來詳細談談關於指標的幾個重要方面。 指標類型的本質分析 1、指標的本質 指標的本質:一種複合的資料類型。下面我將以下面幾個作為例子進行展開分析: a)、int *p;
Time of Update: 2018-12-06
第3章 命名規則</P><P>比較著名的命名規則當推Microsoft公司的“匈牙利”法,該命名規則的主要思想是“在變數和函數名中加入首碼以增進人們對程式的理解”。例如所有的字元變數均以ch為首碼,若是指標變數則追加首碼p。如果一個變數由ppch開頭,則表明它是指向字元指標的指標。</P><P>“匈牙利”法最大的缺點是煩瑣,例如int i, j, k; float x, y, z;倘若採用“匈牙利”命名規則,則應當寫成:</P><
Time of Update: 2018-12-06
第6章 函數設計函數是C++/C程式的準系統單元,其重要性不言而喻。函數設計的細微缺點很容易導致該函數被錯用,所以光使函數的功能正確是不夠的。本章重點論述函數的介面設計和內部實現的一些規則。函數介面的兩個要素是參數和傳回值。C語言中,函數的參數和傳回值的傳遞方式有兩種:值傳遞(pass by value)和指標傳遞(pass by pointer)。C++ 語言中多了引用傳遞(pass by
Time of Update: 2018-12-06
基本解釋 通過上一篇的分析,我們已經很清楚地知道:指標不是一個簡單的類型,它是一個本身和所指向物相複合的類型。指標的算術運算(如步進)與指標所指向物的類型密切相關。 問題:指標步進 & 步進單位 下面的代碼中列印出的結果是幾?int arContext[5] ={0,1,2,3,4}, i, *pAr;pAr = arContext;printf ("%d\n", *(pAr + 3 * sizeof
Time of Update: 2018-12-06
7.7 杜絕“野指標”“野指標”不是NULL指標,是指向“垃圾”記憶體的指標。人們一般不會錯用NULL指標,因為用if語句很容易判斷。但是“野指標”是很危險的,if語句對它不起作用。“野指標”的成因主要有兩種:(1)指標變數沒有被初始化。任何指標變數剛被建立時不會自動成為NULL指標,它的預設值是隨機的,它會亂指一氣。所以,指標變數在建立的同時應當被初始化,要麼將指標設定為NULL,要麼讓它指向合法的記憶體。例如 char *p = NULL; char *str = (char *