原创 如何使用Lex和Yacc工具(1)

Lex是一個基於正則表達式的描述詞法分析器的工具,已經廣泛用於產生各種語言的詞法分析器,也稱爲Lex編譯器。它的輸入使用Lex語言編寫的源程序,在Lex源程序中,要將基於正則表達式的模式說明與詞法分析器要完成的動作組織在一起。輸出是詞法分

原创 編譯器的設計與實現(1)-編譯器的組成

             詞法分析器              語法分析器              語義分析與中間代碼生成器             代碼優化器             目標代碼生成器

原创 RHEL 5 Install Number

RHEL 5 Install Number 測試過,可行!Server:* Red Hat Enterprise Linux (Server including virtualization):   2515dd4e215225dd  +

原创 memcpy和memmove的區別

      memcpy()和memmove()都是C語言中的庫函數,在頭文件string.h中,其原型分別如下:       void* memcpy(void* dst,const void* src,size_t count);

原创 C/C++基本數據類型---數組

  在各種有關C/C++的書籍和網頁都對這個話題進行了詳細的講解。這篇文章只是記錄作者在編程中的經驗和困惑。 先看下面的語句 int p[5] = {1,2,3,4,5}; 相信大家都很熟悉這行

原创 C++ volatile

c++中的volatile關鍵字一直沒有使用過。最近使用了一下。該關鍵字的意思就是告訴編譯器不要對該變量進行優化,使用地址對該變量進行取值而不要直接使用該變量已經存在cach/寄存器中的值。

原创 安全的字符串複製函數strcpy_safe的實現

char* strcpy_safe(char* dst,const char* src) { size_t len = strlen(src); char* cp = dst; if(dst == NULL) { return

原创 劍盟現在開放註冊了

http://bbs.janmeng.com/?fromuid=299598 http://bbs.janmeng.com/?fromuser=martinkro

原创 學習病毒技術的常用網址手收集

1  http://www.corelan.be:8800/ 2  http://quequero.org/Home 3  http://152308.blogbus.com/ 4  http://log.mtian.net/ 5  ht

原创 C++ placement new

在處理內存分配的時候,C++程序員會用new操作符(operator new)來分配內存,並用delete操作符(operator delete)來釋放內存。這是一個new操作符的例子。 class CTest {      /* 成員函

原创 C++類型萃取技術

  Traits技術可以用來獲得一個 類型 的相關信息的。   首先假如有以下一個泛型的迭代器類,其中類型參數 T 爲迭代器所指向的類型:     template <typename T>     class myIterator   

原创 MFC技巧

1 CFrameWnd::m_bAutoMenuEnable 說明: 當此成員是可用的(缺省),用戶下拉一個菜單時,沒有ON_COMMAND或ON_UPDATE_COMMAND_UI處理程序的菜單項目將被自動設置爲無效。 具有ON_COM

原创 RedHat DVD安裝盤製作

Redhat 4(光驅生成ISO)第一步:先準備一個較大的硬盤空間,大約4.5G,有條件最好大一點;第二步:建立一個目錄,存放CD的ISO文件;     mkdir /mnt/iso  第三步:製作CD的ISO文件;    分別將RedH

原创 PHP和MYSQL的編碼問題

1 MYSQL中的字符集概念   Mysql的字符集裏有兩個概念,一個是"Character set(字符集)",另一個是"Collations"。 1.1 Collations   Collations翻成中文是"校驗",在網頁開發的過

原创 VC開發環境下DEBUG和RELEASE的一個區別

     在DEBUG版下調用memcpy和memmove實際上都是調用的同一個函數memmove,只有在RELEASE版下memcpy和memmove調用才區分開。      這是我在測試memcpy和memmove這兩個函數發現的。示