當前位置:首頁 » 操作系統 » tinycc源碼分析

tinycc源碼分析

發布時間: 2022-09-23 15:35:49

A. IAR中的問題解決方法求解

IAR中的問題解決方法求解
很顯然你沒有使能寄存器的位定義。方法如下:Project ——> Option ——> General Options ——> System(如下圖所示),勾選

Enable bit definitions in I/O-Include files即可

2.MCU型號選擇

如果和我一樣都次都是以空工程創建的話,不過忘了第一步先進Project ——> Option ——> General Options ——> Target選擇所使用的MCU型號,不然編譯免不了要報錯,如下圖所示。

3. 堆棧大小

今天下午編譯一個程序,0錯誤0警告,挺好,可一運行就跑飛,根本不能正常運行。

其實是我沒有正常設置堆棧大小導致的這種問題,尤其是在寫大工程時,這種錯誤出現的概率很高。GCC和IAR分配堆棧的方式不同,IAR先分配堆棧空間,相當於定義一個全局數組為堆棧空間,堆棧初始為堆棧空間最高地址;GCC不用先分配堆棧,自動把RAM剩餘空間作為堆棧空間,堆棧初始為RAM最高地址。

先編譯看看自己的程序用了多少ram,在看看總共有多少ram。

然後Project ——> Option ——> Linker ——> List選擇生成LIST文件,並包含stack選項,如下圖所示。

在./Debug/list目錄下,得到.map(可能是.lst等其他格式)文件,用記事本打開,找到以下內容:

****************************************
* *
* CALL GRAPH *
* *
****************************************

->Sub-tree of type: Interrupt function tree that does not make
: indirect calls
CSTACK
| Stack used (prev) : 00000000
01 int_T0_OV
| Stack used (prev) : 00000000
| + function block : 0000000C

......(省略N行)

01 main
| Stack used (prev) : 0000003A
| + function block : 00000000
<-Sub-tree of type: Function tree
| Stack used : 000000E2

找到最大的Stack used,我的就是000000E2,這就是用到的最大的堆棧空間,保守一點,我設置成0x100位元組,沒有超過剩餘RAM,再重新編譯,運行,模擬器沒有堆棧不足警告,程序也能正常運行了。

如下圖所示:

4. 查看匯編

相信一個優秀的單片機軟體工程師都多多少少會去看看編譯器的匯編代碼,看看有沒有什麼問題或者看看編譯器有沒有自作聰明的做些什麼

Project ——> Option ——> C/C++ complier ——> List,勾選output assembler files,編譯後則生成離線匯編代碼文件

此時在工程目錄下的Debug-->List即可看到所有參加編譯的C文件對應的匯編文件,後綴名為*.s90

5.內聯函數

inline函數傳統上只有C++支持,但IAR EW也支持在C代碼中使用inline.
#pragma inline:建議編譯器對緊隨其後的函數進行inline處理
#pragma inline = forced: 強制編譯器對緊隨其後的函數進行inline處理

復制代碼
/***************************** 錯誤描述 ******************************************/
// tft.c中定義內聯函數
#pragma inline = forced //強制inline
void TFT_Write_Colour(const RGB_COLOUR *rgb)
{
//...code....
}

// tft.h中聲明函數
void TFT_Write_Colour(const RGB_COLOUR *rgb);

// main.c中調用函數
// 編譯報錯:main中引用了未定義的外部函數TFT_Write_Colour。

/***************************** 解決辦法 ******************************************/
// tft.h中「定義函數」
#pragma inline = forced //在IAR EW430中,這里必須用強制inline;用inline可能導致編譯器忽略內聯,而定義成普通函數而出錯。
void TFT_Write_Colour(const RGB_COLOUR *rgb)
{
//...code....
}

// main.c中包含tft.h,並調用函數
// 結果:編譯正確
復制代碼

6. 如何把變數定義到flash空間

unsigned char __flash temptab[] = {1,2,3,4,5}; <br>__flash unsigned char a @ 0x8; // 定義變數存放在flash 空間0X08單元

7. 關於內存模型

AVR 微控制器的其中一個特點是它有一種存儲訪問方法均衡了「cheap access limited to small memory areas」與「more expensive accessmethods that can access any location in memory」。
在AVR_IAR C/C++編譯器中,通過選擇某種存儲模式(memory model),可設置一些訪問方法為默認的存儲器訪問方法(default memory accessmethod)。共有三種可用的存儲模式——Tiny,Small 和Large。你的處理器選項決定了哪些模式可以使用。如果你不指定一種存儲模式,則編譯器自動設定-v0、-v1、-v2、-v3、-v5 選項下的默認方法為Tiny,-v4 和-v6 選項下的訪問方法為Small。

8. 關於生成文件格式的設置

如圖,在linker -> outpu ->other中可設置相應的輸出文件格式.

比如要生成bin格式,選擇raw-binary就可以了, 如果是要生成hex格式,那麼可以選intel-extern ,不過這個時候文件擴展名是*.a90,可以把"Override default " 打鉤,然後修改後綴名為hex就行了.

B. TinyOS是什麼

Tiny OS是UC Berkeley(加州大學伯克利分校)開發的開放源代碼操作系統,專為嵌入式無線感測網路設計,操作系統基於構件(component-based)的架構使得快速的更新成為可能,而這又減小了受感測網路存儲器限制的代碼長度。Tiny OS是一個具備較高專業性,專門為低功耗無線設備設計的操作系統,主要應用於感測器網路、普適計算、個人區域網、智能家居和智能測量等領域。
1)特性,Tiny OS的如下特性決定了其在感測器網路中的廣泛應用,使其在物聯網中占據了舉足輕重的地位。
a.相對於主流操作系統成百上千MB的龐大體積來說,Tiny OS顯得十分迷你,只需要幾KB的內存空間和幾十KB的編碼空間就可以運行的起來,而且功耗較低,特別適合感測器這種受內存、功耗限制的設備。
b.Tiny OS本身提供了一系列的組件,包括:網路協議、分布式伺服器、感測器驅動及數據識別工具等,使用者可以通過簡單方便的編製程序將多個組件連接起來,用來獲取和處理感測器的數據並通過無線電來傳輸信息。
c.Tiny OS在構建無線感測器網路時,通過一個基地控制台控制各個感測器子節點,聚集和處理各子節點採集到的信息。Tiny OS只要在控制台發出管理信息,然後由各個節點通過無線網路互相傳遞,最後達到協同一致的目的。
2)應用:
Tiny OS是一個開源的操作系統,所有人都可查看和修改Tiny OS的源代碼,參與到Tiny OS及配套軟體的開發,並應用到商業和工業領域中。在眾多參與者的協作下,Tiny OS於2012年發布了的V2.1.2版本,並在2013年將Tiny OS上線到Github,供全球的參與者下載,平均下載量已經高達3.5萬次/年。
Tiny OS已經有很多產品,例如:用於神經信號接收、調解、顯示的接收器、用於能源領域中的石油和氣體監控、用於感測網路的控制和優化、用於無線感測網路進行健康監測等。
參考:http://ke..com/link?url=8I6_rhZnhHCuDp6edqASHA-bVTlc70fhnNcMLPMr0IA5dOTQIW7-wa_-

C. 如何利用tinyxml操縱xml及注意問題

創建的格式如下:

復制代碼 代碼如下:

<Persons>
<Person>
<name>lhy</name>
<age>22</age>
</Person>
</Persons>

上篇博客中,我們也介紹了tinyxml解析器中的所有的類以及類之間的關系。
創建上述格式的xml,代碼如下:

復制代碼 代碼如下:

//創建一個XML的文檔對象。
TiXmlDocument *myDocument = new TiXmlDocument();
//創建一個根元素並連接。
TiXmlElement *RootElement = new TiXmlElement("Persons");
myDocument->LinkEndChild(RootElement);
//創建一個Person元素並連接。
TiXmlElement *PersonElement = new TiXmlElement("Person");
RootElement->LinkEndChild(PersonElement);
//創建name元素、age元素並連接。
TiXmlElement *NameElement = new TiXmlElement("name");
TiXmlElement *AgeElement = new TiXmlElement("age");
PersonElement->LinkEndChild(NameElement);
PersonElement->LinkEndChild(AgeElement);
//設置name元素和age元素的內容並連接。
TiXmlText *NameContent = new TiXmlText("lhy");
TiXmlText *AgeContent = new TiXmlText("22");
NameElement->LinkEndChild(NameContent);
AgeElement->LinkEndChild(AgeContent);
myDocument->SaveFile("d:\\lhy\\xml.txt");//保存到文件

只要搞清xml中節點之間的關系,創建不是問題。說白了就是一種輩分關系。
創建搞定了,但是作為C++程序猿,寫完之後,總感覺有點別扭,總感覺哪不對勁。你是否也看出其中存在的貓膩?
對了,些許的代碼中有大量的New指針。在C++中可沒有java中的垃圾回收機制,必須自己來處理這些廢棄的垃圾。但是代碼中卻沒有Delete語句?
上網查了資料,發現很多創建代碼中,都沒有Delete語句?難道是大家都是復制粘貼?還是tinyxml在搞怪?
我總結了以下幾點,但是最後在開發的過程中仍是疑問,但是開發的過程中,沒有出現問題,所以我的程序就暫時如此了。
說法一:很多文章中,都是new沒有delete,是因為tinyxml可以自動釋放,自動銷毀指針,無需開發者手動釋放。
質疑:new出來的可以自動釋放?new出來說明是在堆上創建的,什麼時候會自動釋放?程序結束時,自動釋放?那怎麼判斷程序結束呢?(在一個模塊中如何析構另一個模塊中的內存區域,我們後面會詳談),所以這種說法不攻自破。
既然tinyxml中有自毀功能,那我們查詢其源代碼,發現果真如此,tinyxml中在析構函數中,有相應的指針釋放。但是並不是每個節點如此的。
源碼中的詳情:

復制代碼 代碼如下:

TiXmlNode::~TiXmlNode()
{
TiXmlNode* node = firstChild;
TiXmlNode* temp = 0;
while ( node )
{
temp = node;
node = node->next;
delete temp;
}
}
void TiXmlNode::Clear()
{
TiXmlNode* node = firstChild;
TiXmlNode* temp = 0;
while ( node )
{
temp = node;
node = node->next;
delete temp;
}
firstChild = 0;
lastChild = 0;
}

我們也知道tinyxml中的類之間存在繼承關系。
那我們看tinyxml中的TixmlElement類:

復制代碼 代碼如下:

TiXmlElement::~TiXmlElement()
{
ClearThis();
}
void TiXmlElement::ClearThis()
{
Clear();
while( attributeSet.First() )
{
TiXmlAttribute* node = attributeSet.First();
attributeSet.Remove( node );
delete node;
}
}

因為TixmlElement是繼承TiXmlNode.但是在TiXmlDocument中並沒有發現TiXmlDocument類的析構函數。
第二種說法:TiXmlDocument對象就是這棵樹的根結點,
在一個完整的文檔中, 除了它, 其餘結點必須都是它的後代, 所以TinyXml用了一個很巧妙的方法來析構每一個結點所對應的對象 ----
每個結點的析構任務都委託給了它的父親, 這樣只要保證父親被正確析構, 或者調用了父親的Clear函數, 它的所有後代都會被正確的析構,
所以對整個文檔來說只要TiXmlDocument對象被正確析構即可。
在創建的上述代碼中,我們發現,所有的節點都是掛在根節點之下的。
其實這句代碼: myDocument->LinkEndChild(RootElement);使用了多態方式。類之間的關系如下:

並且LinkEndChild源代碼如下:它是父類TiXmlNode中的方法

復制代碼 代碼如下:

TiXmlNode* TiXmlNode::LinkEndChild( TiXmlNode* node )
{
assert( node->parent == 0 || node->parent == this );
assert( node->GetDocument() == 0 || node->GetDocument() == this->GetDocument() );
if ( node->Type() == TiXmlNode::DOCUMENT )
{
delete node;
if ( GetDocument() ) GetDocument()->SetError( TIXML_ERROR_DOCUMENT_TOP_ONLY, 0, 0, TIXML_ENCODING_UNKNOWN );
return 0;
}
node->parent = this;
node->prev = lastChild;
node->next = 0;
if ( lastChild )
lastChild->next = node;
else
firstChild = node;// it was an empty list.
lastChild = node;
return node;
}

這樣的話:則只要刪除根節點,在程序中myDocument,就相當於把刪除了TiXmlNode,相當於調用了TiXmlNode的析構函數。
質疑:網上說這種方式,析構是從葉子到樹根。根據TiXmlNode中的析構函數,我們可以得出,是從樹根到葉子。
但是我們在Delete myDocument時,應該注意一點:
創建文檔時,也就是程序段中的myDocument。若是從堆上創建,則需需要手動釋放。如我們上述的片段中,就是在堆上創建的。
TiXmlDocument *myDocument=new TiXmlDocument ();
若是從棧上創建,則不須我們手動釋放,而是程序自動調用析構函數。同時我們應該注意,其他的元素必須在堆上創建。因為在TiXmlNode析構函數中,是delete的,但是棧上的東東是不須delete,所以除了根節點之外連接的後代節點是必須從堆上創建。
經過我們解釋,明白tinyxml中的原理了嗎?只要理解了tinyxml中的類的作用以及類之間的關系,看源碼是沒問題滴哦。
這篇博客根據創建xml小demo解釋了其中存在的疑問。那下篇博客中我們會根據解析xml來答疑解析中存在的問題。

D. linux tinyxml2怎麼編譯

1.首先,要到官網上去把tinyxml庫下載下來,網址為:點擊打開鏈接:http://sourceforge.net/projects/tinyxml/

2.把下載的tinyxml庫解壓縮,我這里是解壓縮到/opt 目錄下

3.進入到解壓縮目錄下,我們會發現Tinyxml在Windows 下是使用微軟的VS 來生成的庫,因為其中有tinyxml.sln,tinyxml_lib.vcxproj,tinyxmlSTL.vcxproj等文件,當然,Tinyxml是開源的,所以它也有一個Makefile,用來生成Linux下的Tinyxml庫。整個Tinyxml源碼項目其實是由2個頭文件和一個4個C++源文件(.cpp)組成:tinystr.h,tinyxml.h,tinystr.cpp,tinyxml.cpp,tinyxmlerror.cpp,tinyxmlparser.cpp。其中還有一個xmltest.cpp文件,只是一個測試代碼,有興趣的話,大家可以打開研究它。好了,現在介紹怎麼修改它的Makefile:

(1)使用vim或者其他的編輯器打開Makefile文件

(2)將其中的注釋為Targets of the build的下一行OUTPUT := xmltest一行修改為:OUTPUT := libtinyxml.a
(3)將其中的注釋為Source files 的下一行SRCS:=tinyxml.cpp tinyxml-parser.cpp xmltest.cpp tinyxmlerror.cpp tinystr.cpp中的xmltest.cpp刪除,因為它只是一個測試源文件,不需要編譯。

(4)將其中的Output的下一行的${LD} -o $@ ${LDFLAGS} ${OBJS} ${LIBS} ${EXTRA_LIBS}修改為:${AR} $@ ${LDFLAGS} ${OBJS} ${LIBS} ${EXTRA_LIBS}。大致改成這樣

  1. ${OUTPUT}:${OBJS}
  2. ${AR}$@${LDFLAGS}${OBJS}${LIBS}${EXTRA_LIBS}
  3. #${LD}-o$@${LDFLAGS}${OBJS}${LIBS}${EXTRA_LIBS}
    (5)將Makefile的倒數第二行 xmltest.o:tinyxml.h tinystr.h,注釋掉,因為不需要將演示程序添加到靜態庫中。然後保存退出。

(6)在終端下進入Makefile所在目錄,執行make命令編譯,即可在Makefile所在目錄下生成libtinyxml.a文件。

4.接下來就可以使用這個靜態庫了:$ g++ -o xmltest xmltest.cpp libtinyxml.a 注意:將使用的靜態庫放在源文件後面即可,如果靜態庫文件不在當前目錄,應該使用它的絕對路徑或者用g++的參數-L來指定路徑,因為編譯器默認在當前目錄下先查找指定的庫文件。

修改後的Makefile (v 1.0.1) 記錄如下:

[plain] view plain print?

#****************************************************************************

#

#MakefileforTinyXmltest.

#LeeThomason

#www.grinninglizard.com

#

#ThisisaGNUmake(gmake)makefile

#****************************************************************************

#,orNOotherwise

DEBUG:=NO

#,orNOotherwise

PROFILE:=NO

#TINYXML_USE_.NO,thenSTL

#willnotbeused.YESwillincludetheSTLfiles.

TINYXML_USE_STL:=NO

#****************************************************************************

CC:=gcc

CXX:=g++

LD:=g++

AR:=arrc

RANLIB:=ranlib

DEBUG_CFLAGS:=-Wall-Wno-format-g-DDEBUG

RELEASE_CFLAGS:=-Wall-Wno-unknown-pragmas-Wno-format-O3

LIBS:=

DEBUG_CXXFLAGS:=${DEBUG_CFLAGS}

RELEASE_CXXFLAGS:=${RELEASE_CFLAGS}

DEBUG_LDFLAGS:=-g

RELEASE_LDFLAGS:=

ifeq(YES,${DEBUG})

CFLAGS:=${DEBUG_CFLAGS}

CXXFLAGS:=${DEBUG_CXXFLAGS}

LDFLAGS:=${DEBUG_LDFLAGS}

else

CFLAGS:=${RELEASE_CFLAGS}

CXXFLAGS:=${RELEASE_CXXFLAGS}

LDFLAGS:=${RELEASE_LDFLAGS}

endif

ifeq(YES,${PROFILE})

CFLAGS:=${CFLAGS}-pg-O3

CXXFLAGS:=${CXXFLAGS}-pg-O3

LDFLAGS:=${LDFLAGS}-pg

endif

#****************************************************************************

#Preprocessordirectives

#****************************************************************************

ifeq(YES,${TINYXML_USE_STL})

DEFS:=-DTIXML_USE_STL

else

DEFS:=

endif

#****************************************************************************

#Includepaths

#****************************************************************************

#INCS:=-I/usr/include/g++-2-I/usr/local/include

INCS:=

#****************************************************************************

#

#****************************************************************************

CFLAGS:=${CFLAGS}${DEFS}

CXXFLAGS:=${CXXFLAGS}${DEFS}

#****************************************************************************

#Targetsofthebuild

#****************************************************************************

OUTPUT:=libtinyxml.a

all:${OUTPUT}

#****************************************************************************

#Sourcefiles

#****************************************************************************

SRCS:=tinyxml.cpptinyxmlparser.cpptinyxmlerror.cpptinystr.cpp

#Addonthesourcesforlibraries

SRCS:=${SRCS}

OBJS:=$(addsuffix.o,$(basename${SRCS}))

#****************************************************************************

#Output

#****************************************************************************

${OUTPUT}:${OBJS}

${AR}$@${LDFLAGS}${OBJS}${LIBS}${EXTRA_LIBS}

#${LD}-o$@${LDFLAGS}${OBJS}${LIBS}${EXTRA_LIBS}

#****************************************************************************

#commonrules

#****************************************************************************

#

%.o:%.cpp

${CXX}-c${CXXFLAGS}${INCS}$<-o$@

%.o:%.c

${CC}-c${CFLAGS}${INCS}$<-o$@

dist:

bashmakedistlinux

clean:

-rm-fcore${OBJS}${OUTPUT}

depend:

#makedepend${INCS}${SRCS}

tinyxml.o:tinyxml.htinystr.h

tinyxmlparser.o:tinyxml.htinystr.h

tinyxmlerror.o:tinyxml.htinystr.h

E. 文件格式

常用文件格式一點通
不同的文件,有不同的文件格式,區別這些文件格式常常是文件名的後綴名不同,現統計常用文件後綴名如下,供讀者參考和查閱。

BAT DOS下的批處理文件。Autoexec.bat為自動批處理文件,它是特殊的批處理文件。

EXE可執行的程序文件,與COM內部結構不相同,最突出是長度沒有限制。

COM可執行的二進制代碼系統程序文件,特點非常短小精焊,長度有限制。

ASM匯編程序文件為二進制代碼文件,可以打個比方,它就像BASIC中的.BAS程序文件一樣,為不可執行文件。

ASC代碼文件。

BAK備份文件

LIB程序庫文件

CHK檢查磁碟命令CHKDSK發現的目錄或文件分配表中的錯誤,校正系統後的文件。

TMP臨時文件

SYS系統配置文件,最典型的如config.sys,一般可以用EDIT進行編輯。

OBJ目標文件,源程序編譯輸出的目標代碼。

OLD備份文件,一般是一些程序對系統配置修改後將原文件復制一份存儲為該文件格式。

INI配置文件,不要以為這個文件只有Windows程序需要,DOS下程序也有不少需要它,如3DS與AutoCAD。

INF安裝配置文件,這在WIN95下使用較多。

HLP HELP幫助文件,這個文件一定要重視,因為它是你每使用一個新軟體的最好的說明書,幾乎99%的軟體都有這個文件,另外,DOS下的一些幫助放在README以後,幫助便沒有了,如UCDOS中的REAME.EXE;有單獨DOS的命令,若不知道怎麼使用,可以試試以下的命令格式:「DIR?或DIR/?」。

DDI早期映象文件,由DiskDUP IMGDRIVE IMG.EXE展開

IMG這個文件要注意,有時它是一個圖象文件,但更多的時候,它是映象文件,在早期光碟上,此文件使用最多,能常用HD-COPY IMG UNIMG都軟體進行解壓(註:IMG這個軟體為什麼一閃就沒了呢,這個軟體需要熱鍵激活,按下Ctrl+Alt+S+D+X),如果要安裝的軟體壓縮文件由和幾個IMG分開壓縮,那最好用UNIMG將它們全部解壓縮,然後安裝,它安裝時提示你「請插入X序列盤」。

ARJ ARJ(ARJ這個以前風眯一時的壓縮軟體誰人不曉)軟體壓縮的文件,它的壓縮比較高,使用也特方便順手,只需要「ARJ a -r -v……」

RAR這也是一個壓縮文件,傳說比ARJ壓縮比更高,筆者沒有親手做試驗,故不敢下空此結論。

ZIP當前最流行的壓縮文件,誰不知道ZIP呀,WINZIP,再也不是DOS下的那個UNZIG或PKZIP了,兼容,向下兼容,從游戲到軟體,差不多都是它壓縮的了。

IMD UCDOS中輸法的編碼字典文件。

PDV UCDOS中的自由表格UCTAB生成的表格文件,它生成的文件可以被WPS調用,也挺方便的。

BAS BASIC中的源程序文件,BASIC可為初學者最為熟悉的編輯語言,它的優點筆者就不在累贅了,注意QBASIC與QUICK BASIC和GW BASIC是有區別。

C C語言中的源程序文件,它不但造就了我們常常為之日夜奮戰的精彩電腦游戲,還創造出UNIX操作系統,有口皆碑的好編程軟體。

MAK C語言中的工程文件。

COB COBOL語言源程序文件。

PAS PASCAL語言源程序文件。

FOR FORTRAN語言源程序文件。

FOX FOXBASE偽編譯程序文件,比PRG短小運行速度快。

PRG FOXBASE過程程序文件。

DBF XBASE資料庫文件。

IDX FOXBASE中的索引文件。

LBL FOXBASE中的標簽文件。

FRM FOXBASE中的報表格式文件。

MEM FOXBASE中的內存變數文件。

FMT FOXBASE中的屏幕格式文件。

DBT FOXBASE中的資料庫文件的輔助文件。

DBC為FOXPRO中的資料庫名。

PJX Visual FoxPro下的項目文件與輔助文件PJT結合成項目管理管理文件。

RTF Rich的文本文件格式。

TXT純文本文件格式,可以利用TYPE以及EDIT或者記事本等任何字處理程序打開,對它顯示編輯。

WPS文檔文件,是由著名國產軟(WPS)(WORD PROCESSING SYSTEM)生成。由於WPS歷經滄桑,經歷了WPS1.0 2.2WPS30F WPSNT以及現在的WPS98眾多版本,但是沒有像WORD一樣提供轉換程序,一般高版本的WPS可以讀出低版本的文件,對於低版本能不能讀出高版本的文件,筆者沒有一一做出試驗,故不敢輕易下結論,只試驗過UCDOS下的WPS讀不出由WPSNT編輯的文件;另外對於WPS97的文件,你根本就不要用DOS版本去讀,百分之百讀出來,其實相互轉換也不大困難,只要你在存檔時選擇以TXT純文本格式存檔也就不存在什麼版本高低了。(WPS97中不要放圖片)

%A%%B% WPS中的臨時文件,注意清除OVL覆蓋文件,如WPS.VOL1。

DOC文檔文件,是由軟體霸主Micrsoft Word生成,也有一部分是由WORD PERFECT生成,此文件也是版本眾多有Wihdows下面的WORD5.0 6.0生成,還有WIN95下WORD7.0 WORD97,它們相互兼容性比較好,高版本可以輕松讀取低版本文件,而且高版本也可以以低版本的格式進行存儲,有人說WINDOWS中的書寫器也能讀出DOC,但筆者試驗,讀取WORD7.0以上的DOC都是一些亂碼,而且格式里也註明只能讀出DOS版的DOC。

PCS為POWERPOINT中的圖象文件,為矢量圖形文件。

XLS電子表格EXCEL的格式文件。

FNT為Bezier(貝氏)類型字體的文件。

TTF True Type字體文件,是一種輪廓字模,是由Apple和Microsoft合作開發的。Windows3.1下直接支持True Type字模。

FOT是True Type字體文件的資源文件,正因為FOT文件中含有指向TTF的指針。所以我們的字體文件(TTF)才可以放在任何目錄下面,而不必提心系統找不到。

PFB Adobe TYPE1字體Post Script字模文件,必須使用Adobe Type Manager管理安裝使用,它的最大優點是放大時比TTF字幕可靠得多。

PS1為WPS下擴展字型檔文件,PS2一般為繁體。

REC Windows中記錄器中的宏命令文件。

CRD Windows中的卡版盒文件。

PIF Windows中的運行非WINDOWS應用程序建立的一個文件。

WRI文檔文件,是由WINDOWS中書寫器生成的。

DRV驅動程序文件。

VXD虛擬設備文件

GRP Windows程序組文件。

ANI WIN95中動畫滑鼠指針文件。

DLL Windows下應用程序中的動態連結庫文件。

SCR WINDOWS屏幕保護程序文件

MP2 MP3當前最流行的音樂文件,音質可於CD音質媲美,採集率達44.1KHZ,由於它文件格式又非常小,需要一個叫WINAMP的軟體和一個叫抓音軌的軟體,如果通過音效卡直接就能將錄音帶上的歌曲錄製成WAV文件,再轉化為MP3,播放時需要硬體配置不是太高。

SND在WIN95下同WAV文件圖標大同小異,小喇叭的顏色是綠色,是聲音文件的剪輯文件。

VOC VOC文件是隨音效卡一起誕生的一種常見數字聲音文件,主要用於DOS程序(特別游戲),VOC與波形文件可方便轉換。

WAV Windows所使用的標准數字音頻文件,也稱波形文件,它能夠重現各種單聲道或立體聲的聲音,是最常用的聲音文件。

MID這個是音樂發燒友最熟悉不過的文件格式,是「樂器數字介面」(Musical lnstrument Digital interface)讀作middy「迷笛」。mid文件最受人於睞的是占的空間小,與wav相比不是音樂采樣,而是將每個音符記錄為一個數字,mid標准規定了各種音調的混合及發音,通過輸出裝置可以將這些數字重新合成為音樂。它的缺點是有點太電子琴味。

RMI CMI CMF(Creative Music File)是mid幾個變通格式,它們都同音效卡一起誕生,現在一般很少,它們有些可以同mid相互轉換,用CMF2MID小軟體。

PCX是微機上使用最廣泛的圖像格式之一,能表現真彩圖像。

BMP是Windows所使用的基本點陣圖格式,是小畫筆就能輕松創建的文件,另外提醒你BMP有壓縮(RLE方法)和非壓縮,我們常用是非壓縮,bmp還有一個OS/2的版本,與Windows有區別。

GIF GIF在網頁中佔有獨一無二的地位,美中不足是顏色最多為(256色)8位,與其它圖象文件相比,GIF高人一招,它是唯一可以存儲動畫的圖像格式。

PSD PDD點陣圖文件,均為大名鼎鼎的圖象大師Adobe Photoshop直接生成的圖象文件。

CGM(Computer Graphics Metafile)是壓縮的矢量圖形文件,WINWORD可以打開。

HGL(HP Graphic Language)是HP公司創建的一種矢量圖形語言。

WPG(DrawPerfect)矢量文件。

TIF最初用於掃描儀和桌面出版業,TIF程式圖像可以是RGB真彩色的。

TGA點陣圖文件,為Targa公司開發的支持8位到32位顏色深度圖像文件,結構簡單,少有變化,易轉換。

VDA ICB VST與TGA相似,均為Targa公司開發的點陣圖文件。

JPG JPE原是Apple Mac機器上使用的一種圖像格式,現在意在PC機上大行其道,由於其壓縮比可以調節,而且失真又很小,所以無論是網路上還是圖像處理上都是使用很廣泛的。

PIC同上,Lotus 1-2-3的圖表文件也叫PIC文件,使用時請注意。

PCD是PhotoCD專用存儲格式,由於其文件特別大,不得不存在CD-ROM上,但應用特別廣。

EPS(Encapsulared postScrip)是Adobe System公司的PostScrip頁面描述語言的產物,是矢量圖形文件。

WMF (Windows MetaFile)是特殊文件,是點陣圖和矢量圖混血兒,桌面格式,可以在Windord與Offices組件中ClipArts最常用的格式可以在WinWord的DRAW中隨意拆開編輯。

AI 矢量格式,是久負盛名的繪圖軟體Adobe lllustrator文件格式。

CDR矢量格式,是Corel Draw!標准文件格式。

CPT點陣圖和矢量圖都有,是Corel PHOTO-PAINT的文件格式。

CDT Corel Draw中的模板文件。

CMX Corel Draw展示交換文件。

CMV是Corel MOVE平面動畫軟體中的動畫演示文件。

DXF矢量格式,CAD與3ds玩家可能都知道,是AutoCAD的繪圖交換文件。

3DS矢量格式,為3D Studio的動畫原始圖形文件,含有紋理和光照信息。

SHP矢量格式3DS中的造型文件。

CEL 3DS中的貼圖文件。

MLI 3DS中的材質庫。

DRW矢量格式Micrografx Designer使用的繪圖文件格式。

WPG矢量/格式,是Word Perfect使用的文件格式。

FLI動畫文件,是由AutoDesk公司開發的,只支持320×200×256色模式,它是FLC的老祖宗。

FIC動畫文件,是AutoDesk公司開發的,與FLI相比是青出於藍勝於藍的產物:文件的解析度和顏色數都有所提高,它與FLI在Windows中播放需要專用MCI驅動和相應的播放程序APPlay。

MMM動畫文件,是MacroMind公司著名多媒體寫作軟體Director生成的,一般集成在完整的應用程序中,單獨出現的文件很少。

AVI視頻與音頻交錯文件(Audio-Video lnter leaved音頻-視頻交錯)它將視頻音頻交錯混合在一起,AVI文件使用的壓縮方法好幾種,主要使用有損方法,壓縮比較高,與FLC和MOV相比,畫面質量不太好,在Windows下播放需要安裝VIDEO For Windows驅動程序,AVI在多媒體中應用較多廣,一般視頻採集直接採集的素材便為AVI格式,編輯的它的軟體也不少,如Video Pack Adobe Premiere,

MPG視頻文件,PC機上的全屏幕活動視頻的標准文件,採用MPEG方法進行壓縮的全運動視頻圖像,可於1024×768的解析度下每秒30幀速率播放128000種顏色和同步CD音質的伴音,是極為理想的視頻影像文件

DAT視頻影像文件,是Video CD(VCD)或Karaoke CD(卡拉OK CD)基於MPEG壓縮方法的一種,注意它同數據文件同名

MOV視頻影像,同樣採用有損壓縮方法,在Windows下必須安裝QuickTime程序才能播放,它是從蘋果機移植到PC上的,比AVI畫面質量要好一些,其實你拿一個AVI文件做一下比較也就不難看出了。

HTM超文本文件,INTERNET網上訪問WWW,是在HTM文件的的海洋里沖浪,對於超文本文件,說它是編程,可它也不像編程,現在要建立它,一點也不困難,有關的介紹滿天飛,什麼HOME PAGE,在WIN98中,OFFICES97都可以方便的創建生成。它還有一些名字叫主頁、網,而且還與JAVA關系特密切。Microsoft IE導航者中與NETCAPE航海家都能游覽它。

常用文件格式簡要說明

A 對象代碼庫文件
AAM Authorware shocked文件
AAS Authorware shocked包
ABF Adobe二進制屏幕字體
ABK CorelDRAW自動備份文件
ABS 該類文件有時用於指示一個摘要(就像在一篇有關科學方面的文章的一個摘要或概要,取自abstract)
ACE Ace壓縮檔案格式
ACL CorelDRAW 6鍵盤快捷鍵文件
ACM Windows系統目錄文件
ACP Microsoft office助手預覽文件
ACR 美國放射醫學大學文件格式
ACT Microsoft office助手文件
ACV OS/2的驅動程序,用於壓縮或解壓縮音頻數據
AD After Dark屏幕保護程序
ADA Ada源文件(非-GNAT)
ADB Ada源文件主體(GNAT);HP100LX組織者的約定資料庫
ADD OS/2用於引導過程的適配器驅動程序
ADF Amiga磁碟文件
ADI AutoCAD設備無關二進制繪圖儀格式
ADM After Dark多模塊屏幕保護;Windows NT策略模板
ADP FaxWork用於傳真數據機的交互安裝文件;Astound Dynamite文件
ADR After Dark薠�聊槐;ぃ籗mart Address的地址簿
ADS Ada源文件說明書(GNAT)
AFM Adobe的字體尺度
AF2,AF3 ABC的FlowChat文件
AI Adobe Illustrator格式圖形
AIF,AIFF 音頻互交換文件,Silicon Graphic and Macintosh應用程序的聲音格式
AIFC 壓縮AIF
AIM AOL即時信息傳送
AIS ACDSee圖形序列文件;Velvet Studio設備文件
AKW RoboHELP的幫助工程中所有A-關鍵詞
ALAW 歐洲電話音頻格式
ALB JASC Image Commander相冊
ALL 藝術與書信庫
AMS Velvet Studio音樂模塊(MOD)文件;Extreme的Tracker模塊文件
ANC Canon Computer的調色板文件,包含一系列可選的顏色板
ANI Windows系統中的動畫游標
ANS ANSI文本文件
ANT SimAnt For Windows中保存的游戲文件
API Adobe Acrobat使用的應用程序設計介面文件
APR Lotus Approach 97文件
APS Microsoft Visual C++文件
ARC LH ARC的壓縮檔案文件
ARI Aristotle聲音文件
ARJ Robert Jung ARJ壓縮包文件
ART Xara Studio籜�募�籆anon Crayola美術文件;Clip Art文件格式;另一種光線跟蹤格式;AOL使用的用Johnson—Grace壓縮演算法壓縮的標記文件
ASA Microsoft Visual InterDev文件
ASC ASCⅡ文本文件;PGP演算法加密文件
ASD Microsoft Word的自動保存文件;Microsoft高級流媒體格式(microsoft advanced
streaming FORMat,ASF)的描述文件;可用NSREX打開 Velvet Studio例子文件
ASE Velvet Studio采樣文件
ASF Microsoft高級流媒體格式文件
ASM 匯編語言源文件,Pro/E裝配文件
ASO Astound Dynamite對象文件
ASP 動態網頁文件;ProComm Plus安裝與連接腳本文件;Astound介紹文件
AST Astound多媒體文件;ClarisWorks「助手」文件
ASV DataCAD自動保存文件
ASX Cheyenne備份腳本文件;Microsoft高級流媒體重定向器文件,視頻文件
ATT AT< Group 4點陣圖文件
ATW 來自個人軟體的Any Time Deluxe For Windows個人信息管理員文件
AU Sun/NeXT/DEC/UNIX聲音文件;音頻U-Law(讀作「mu-law」)文件格式
AVB Computer Associates Inoculan反病毒軟體的病毒感染後文件
AVI Microsoft Audio Video Interleave電影格式
AVR Audio Visual Research文件格式
AVS 應用程序可視化格式
AWD FaxVien文檔
AWR Telsis數字儲存音頻文件擴展名格式
Axx ARJ壓縮文件的分包序號文件,用於將一個大文件壓至幾個小的壓縮包中(xx取01-99的數字)
A3L Authorware 3.x庫文件
A4L Authorware 4.x庫文件
A5L Authorware 5.x庫文件
A3M,A4M Authorware Macintosh未打包文件
A4P Authorware無運行時間的打包文件
A3W,A4W,A5W 未打包的Authorware Windows文件
BAK 備份文件
BAS BASIC源文件
BAT 批處理文件
BDF West Point Bridger Designer文件
BFC Windows 95 Briefcase文檔
BG Backgammon For Windows下的游戲文件
BGL Microsoft Flight Simulator(微軟飛行模擬器)的視景文件
BI 二進制文件
BIF Group Wise的初始化文件
BIFF XLIFE 3D格式文件
BIN 二進制文件
BK,BK$ 有時用於代表備份版本
BKS IBM BookManager Read書架文件
BMK 書簽文件
BMP Windows或OS/2點陣圖文件
BMI Apogee BioMenace數據文件
BOOK Adobe FrameMaker Book文件
BOX Lotus Notes的郵箱文件
BPL Borlard Delph 4打包庫
BQY BrioQuery文件
BRX 用於查看多媒體對象目錄的文件
BSC MS Developer Studio瀏覽器信息文件
BSP Quake圖形文件
BS1 Apogee Blake Stone數據文件
BS_ Microsoft Bookshelf Find菜單外殼擴展名
BTM Norton 應用程序使用的批處理文件
BUD Quicken的備份磁碟
BUN CakeWalk 聲音捆綁文件(一種MIDI程序)
BW SGI黑白圖像文件
BWV 商業波形文件
BYU BYU的電影文件格式
B4 Helix Nuts and Bolts文件
C C代碼文件
C0l 台風波形文件
CAB Microsoft壓縮檔案文件
CAD Softdek的Drafix CAD文件
CAL CALS壓縮點陣圖;[非法語句]歷計劃表數據
CAM Casio照相機格式
CAP 壓縮音樂文件格式
CAS 逗號分開的ASCⅡ文件
CAT Quicken使用 的IntellCharge分類文件
CB Microsoft干凈引導文件
CBI 二進制卷格式文件(用於IBM大型機系統)
CC Visual dBASE用戶自定義類文件
CCA cc:郵件文件
CCB Visual Basic動態按鈕配置文件
CCF 多媒體查看器配置文件,用於OS/2
CCH Corel圖表文件
CCM Lotus cc:郵箱(例如「INBOX.CCM」)
CCO CyberChat數據文件
CCT Macromedia Director Shockwave投影
CDA CD音頻軌道
CDF Microsoft頻道定義格式文件
CDI Philip的高密盤交互格式
CDM Visual dBASE自定義數據模塊文件
CDR CorelDRAW繪圖文件;原始音頻CD數據文件
CDT CorelDRAW模板
CDX CorelDRAW壓縮繪圖文件;Microsoft Visual FoxPro索引文件
CEL CIMFast事件語言文件
CER 證書文件(MIME x-x509-ca-cert)
CFB Compton的多媒文件
CFG 配置文件
CFM CotdFusion模板文件;Visual dBASE Windows用戶定製表單
CGI 公共網關介面腳本文件
CGM 計算機圖形元文件
CH OS/2配置文件
CHK 由Windows磁碟碎片整理器或磁碟掃描保存的文件碎片
CHM 編譯過的HTML文件
CHR 字元集(字體文件
CHP Ventura Publisher章節文件
CHT ChartViem文件;Harvard Graphics矢量文件
CIF Adaptec CD 創建器 CD映像文件
CIL Clip Gallery下載包
CIM SimCity 2000文件
CIN OS/2改變控制文件用於跟蹤INI文件中的變化
CK1 iD/Apogee Commander Keen 1數據文件
CK2 iD/Apogee Commander Keen 2數據文件
CK3 iD/Apogee Commander Keen 3數據文件
CK4 iD /Apogee Commander Keen 4數據文件
CK5 iD /Apogee Commander Keen 5數據文件
CK6 iD /Apogee Commander Keen 6數據文件
CLASS Java類文件
CLL Crick Software Clicker文件
CLP Windows 剪貼板文件
CLS Visual Basic類文件
CMD Windows NT,OS/2的命令文件;DOS CD/M命令文件;dBASEⅡ程序文件
CMF Corel元文件
CMG Chessmaster保存的游戲文件
CMP JPEG點陣圖文件;地址文檔
CMV Corel Move動畫文件
CMX Corel Presentation Exchange圖像
CNF Telnet,Windows和其他其內格式會發生改變的應用程序使用的配置文件
CNM Windows應用程序菜單選項和安裝文件
CNQ Compuworks Design Shop文件
CNT Windows(或其他)系統用於幫助索引或其他目的內容文件
COB TrueSpace 2對象文件
COD Microsoft C編譯器產生的可顯示機器碼/匯編代碼文件,其中附有源C代碼作為注釋
COM 命令文件(程序)
CPD Corel Print Office文件(圖形)
CPD,CPE 傳真覆蓋文檔
CPI Microsoft MS-DOS代碼頁信息文件
CPL 控制面板擴展名,Corel顏色板
CPO Corel列印存儲文件
CPP C++代碼文件
CPR Corel提供說明書文件
CPT Corel 照片-籜�枷?
CPX Corel Presentation Exchange壓縮圖形文件
CRD Windows Cardfile文件
CRP Corel 提供的運行時介紹文件;Visual dBASE自定義報表文件
CRT 認證文件
CSC Corel腳本文件
CSP PC Emcee On_Screen圖像
CSS 瀑布式表格文件
CST Macromedia Director Cast文件
CSV 逗號分隔的值文件
CT Scitex CT點陣圖文件;Paint Shop Pro Grapic編輯器文件
CTL 通常用於表示一個包含控制項信息的文件;FaxWork用它來保持有關每個傳真收到或發出的信息
CUE Microsoft提示牌數據文件
CUR Windows游標文件
CUT Dr Halo點陣圖文件
CV Corel版本的檔案文件;Microsoft CodeView信息屏幕文件
CWK ClarisWorks數據文件.
CWS ClarisWorks模塊
CXT Macromedia Director受保護的(不可編輯的)投影文件
CXX C++源代碼文件
DAT 數據文件;WrodPerfect合並數據文件;用於一些MPEG格式的文件
DB Borland的Paradox 7表
DBC Microsoft Visual FoxPro資料庫容器文件
DBF dBASE文件,一種由Ashton-Tate創建的格式,可以被ACT!、Lipper、FoxPro、Arago、Wordtech、Xbase和類似資料庫或與資料庫有關產品識別;可用數據文件(能被Excel 97打開);Oracle 8.1.x表格空間文件
DBX DataBearn圖像;Microsoft Visual FoxPro表格文件
DCM DCM模塊格式文件
DCR 沖擊波文件
DCS 桌面顏色分隔文件
DCT Microsoft Visual FoxPro資料庫容器
DCU Delphi編譯單元文件
DCX Microsoft Visual FoxPro資料庫容器;基覺CX的傳真圖像;宏
DC5 DataCAD繪圖文件
DDF Btrieve或Xtrieve數據定義文件,它包含用於描述Btrieve或Xtrieve文件的元數據
DDIF Digital Equipment或 Compaq格式,用於保存他們圖像與字處理文檔
DEF SmartWareⅡ數據文件;C++模塊定義文件
DEFI Oracle 7 卸載腳本文件
DEM 用於表示數字高度模型的USGS基準的文件
DER 認證文件
DEWF Macintosh Sound Cap/Sound Edit錄音設備格式
DGN Macintosh 95 CAD繪圖文件
DIB 設備無關點陣圖
DIC 目錄
DIF 可進行數據互換的電子表格
DIG DigiLink格式;Sound DesignerⅠ音頻文件
DIR MacromediaDirector文件
DIZ 描述文件
DLG C++對話框腳本文件
DLL 動態鏈接庫
DLS 可下載聲音文件
DMD Visual dBASE數據模塊文件
DMF X-Trakker音樂模塊(MOD)文件
DOC FrameMaker或FrameBuilder文檔;Word Star文檔、Word Perfect文檔、Microsoft Word文檔;DisplayWrite文檔
DOT Microsoft Word文檔模板
DPL Borland Delph3壓縮庫
DPR Borland Delphi工程頭文件
DRAW Acorn的基於對象的矢量圖像文件
DRV 驅動程序
DRW Micrografx Designer/Draw;Pro/E籜�募?
DSF Micrografx Designer VFX文件
DSG DOOM保存的文件
DSM Dynamic Studio音樂模塊(MOD)文件
DSP Microsoft Developer Studio工程文件
DSQ Corel QUERY(查詢)文件
DST 刺綉機圖形文件
DSW Microsoft Developer Studio工作區文件
DTA Word Bank(世界銀行)的STARS數據文件
DTD SGML文檔類型定義(DTD)文件
DTED 地面高度數字數據(圖形的數據格式)文件
DTF Symantec Q&A相關的資料庫數據文件
DTM DigiTrakker模塊文件
DUN Microsoft拔號網路導出文件
DV 數字視頻文件(MIME)
DWD DiamondWare數字化文件
DWG AutoCAD工程圖文件;AutoCAD或Generic CADD老版本的繪圖格式
DXF 可進行互交換的繪圖文件格式,二進制的DWG格式的文本表示;數據交換文件
DXR Macromedia Director受保護(不可編輯)電影文件
D64 Commodore的64位模擬磁碟圖像文件
EDA Ensoniq ASR磁碟映像
EDD 元素定義文檔(FrameMaker+SGML文檔)
EDE Ensoniq EPS磁碟映像
EDK Ensoniq KT磁碟映像
EDQ Ensoniq SQ1/SQ2/Ks32磁碟映像
EDS Ensoniq SQ80磁碟映像
EDV Ensoniq VFX-SD磁碟映像
EFA Ensoniq ASR文件
EFE Ensoniq EPS文件
EFK Ensoniq KT文件
EFQ Ensoniq SQ1/SQ2/Ks32文件
EFS Ensoniq SQ80文件
EFV Ensoniq VFX-SD文件
EMD ABT擴展模塊
EMF Windows增強元文件
EML Microsoft Outlook Express郵件消息(MIME RTC822)文件
ENC 重演文
ENFF 中性文件格式擴展名
EPHTML Perl解釋增強HTML文件
EPS 壓縮的PostScript圖像
EPSF 壓縮的PostScript文件
ERI ERWin文件
ERR 當RobooHELP幫助編譯器企圖編譯一個幫助系統源文件時用來存儲錯誤消息的文件
EPX ERWin文件
ESPS ESPS音頻文件
EUI Ensoniq ESP家族的壓縮磁碟映像
EVY 特使文檔
EWL Microsoft Encarta文檔
EXC Microsoft Word禁止字字典
EXE 可執行文件(程序)

F FORTRAN文
F2R Farandoyle線性模塊格式
F3R Farandoyle分塊線性模塊格式
F77 FORTRAN文件
F90 FORTRAN文件
FAR Fradole Composer音樂模塊(MOD)文件
FAV Microsoft Outlook導航條
FAX 傳真類型圖像
FBK Navison 金融備份
FCD 虛擬CD-ROM
FDB Navison 金融資料庫
FDF Adobe Acrobat表單文檔文件
FEM CADRE有限元素網路文件
FFA,FFL,FFO,FFK Microsoft快速查找文件
FFF GUS PnP銀行文件格式
FFT 最終格式文本(IBM的DCA一部分)
FH3 Als Freehand 3繪圖?/ca>

F. 請問,tc2.0下可用tiny選項得到com文件,那TC++3下呢另外如何用命令行形式編譯源代碼

現在好像沒有人再用tc了吧。應該都用vc這個軟體了啊~

G. 關於Ubuntu虛機內git submole的問題

一、Ubuntu系統默認內置:

實際上ubuntu默認沒有安裝老版本的vi,只裝了vim。vi是vim.tiny(vim的最小化版本,不含 GUI,並且僅含有一小部分功能,並且默認與vi兼容。此軟體包不依賴於vim-runtime軟體包)的一個別名,可用命令ls -l /usr/bin/vi來進行查看vi是指向/etc/alternatives/vi,而/etc/alternatives/vi 又指向/usr/bin/vim.tiny,從命令update-alternatives --display vi可以看出默認情況下,vi當前指向的是vim.tiny。

二、VIM版本及其對比:

不同的編譯選項編譯出來的vim而已。比如vim是終端下的vim-basic跟vim-tiny,而vim-gnome是用了GNOME2 GUI的vim,在gnome桌面系統上推薦安裝vim-gnome。

1、vim-tiny是tiny 版本的vim,就是功能比較少(前面有個+的表示有著功能),但是體積小,速度快。

1、vim-tiny是tiny 版本的vim,就是功能比較少(前面有個+的表示有著功能),但是體積小,速度快。

2、vim-basic:完整版的vim,不過同樣沒有圖形界面,沒有菜單

3、更多可以查看幫助文檔:http://vimdoc.sourceforge.net/htmldoc/various.html#+feature-list

提示:

ctags的功能很強大,更詳細的配置請參考其文檔。

建議在~/.vimrc中添加如下配置以使Vim在父目錄中尋找tags文件[10]:

set tags=tags;/

設置好後,可在Vim中使用如下功能:Ctrl-]轉至最佳匹配的相應Tag,Ctrl-T返回上一個匹配。如果有多個匹配,g Ctrl-]可顯示所有備選的tags。如有需要,可互換Ctrl-]和g Ctrl-][11]:

"在普通和可視模式中,將<c-]>與g<c-]>互換 nnoremap <c-]> g<c-]> vnoremap <c-]> g<c-]> nnoremap g<c-]> <c-]> vnoremap g<c-]> <c-]>

使用:make可調用make命令編譯程序,配合Vim內置的QuickFix功能,可以像IDE一樣打開一個窗口展示編譯錯誤和警告,通過它還可以方便地跳轉到各編譯錯誤的產生位置。

常用的命令有:cw[indow](如有錯誤打開quickfix窗口)、:cn(跳到下一個錯誤)、:cp(跳到前一個錯誤)等,具體可:help quickfix。

如果想在有錯時自動打開quickfix窗口[12]:

" 編譯後,如有錯誤則打開quickfix窗口。(游標仍停留在源碼窗口) " " 注意:需要開啟netsting autocmd autocmd QuickFixCmdPost [^l]* nested cwindow autocmd QuickFixCmdPost l* nested lwindow

默認情況下,:mak[e]會跳轉到第一個錯誤,如果不想啟用這個功能,請使用:make!。

代碼較長時可啟用代碼折疊功能,如按語法高亮元素折疊:

set foldmethod=syntax "默認情況下不折疊 set foldlevel=99

隨後即可使用z系列命令管理代碼折疊。如za會翻轉當前位置的折疊狀態,zA會遞歸翻轉當前層所有代碼的折疊狀態等。當然也可以把功能鍵映射到za:

map <F3> za

K鍵可用於查看當前函數的文檔。

近來仍被積極維護的代碼託管在 GitHub 上的插件[13]:

H. 哪位大神用過Tiny Core,默認英文界面,無法顯示漢字。應該怎麼配置中文字體和輸入法我按網上

在用戶主目錄下(/home/aaa,aaa是你的用戶名),創建 .xinitrc 文件,寫下如下內容:

#!/bin/sh

exportLOCAL=zh_CN.UTF-8
exportLC_CTYPE=zh_CN.UTF-8

如果那個文件已經存在,把後兩行復制進去。


至於輸入法,Linux需要安裝輸入法,可以有fcitx, scim, ibus等。


安裝好輸入法,還要修改 .xinitrc ,添加如下:(我以scim為例,我的Slackware用的正是這個)

exportXMODIFIERS=@im="scim"
exportGTK_IM_MODULE="scim"
exportQT_IM_MODULE="scim"
exportXIM_PROGRAM="/usr/bin/scim-d"

注意ibus需要GTK+的支持,這個以前我弄過,用git把源代碼拷貝過來,用configure配置,若果有依賴庫過舊會提示的,那次為了裝個ibus,我把系統的gtk+及相關庫,如gio等,都重新編譯安裝了一遍,最後總算用上了ibus,但是,ibus對我的chrome支持不是很好,還是換回了scim。

I. 最好的仿火牆是什麼

1.Look'n'stop
Look』n』Stop 被譽為世界頂級防火牆!與同類產品相比具有最為突出的強勁功能以及與眾不同的特點,不僅功能評測在知名防火牆中是最強的!而且軟體大小隻有區區600多k十分小巧, 占內存非常小,可以監控dll,更具強大的御防黑客攻擊能力!

2.
Outpost

一款短小精悍的網路防火牆軟體,它的功能是同類PC軟體中最強的,甚至包括了廣告和圖片過濾、內容過濾、DNS緩存等功能。它能夠預防來自Cookies、廣告、電子郵件病毒、後門、竊密軟體、解密高手、廣告軟體和其它 Internet 危險的威脅。該軟體不需配置就可使用,這對於許多新手來說,變得很簡單。尤為值得一提的是,這是市場上第一個支持插件的防火牆,這樣它的功能可以很容易地進行擴展。該軟體資源佔用也很小。 Outpost的其它強大功能毋庸多說,你親自試一試就知道了。

3.
ZoneAlarm
ZoneAlarm來保護你的電腦,防止Trojan(特洛伊木馬)程序,Trojan也是一種極為可怕的程序。ZoneAlarm可以幫你執行這項重大任務喔。基本版還是免費的。
使用很簡單,你只要在安裝時填入你的資料,如有最新的ZoneAlarm,你就可以免費網上更新。安裝完後從新開機,ZoneAlarm就會自動啟動,幫你執行任務。當有程序想要存取Internet時,如網路瀏覽器可能會出現連不上網路,這時你可以在右下角ZoneAlarm的小圖示上按兩下滑鼠左鍵,選取Programs的選項,勾選你要讓哪些軟體上網,哪些不可以上網,利用此種方法來防治一些來路不明的軟體偷偷上網。最好的方法是鎖住(Lock)網路不讓任何程序通過,只有你核準的軟體才可以通行無阻。你還可利用它來看看你開機後已經使用多少網路資源,也可以設定鎖定網路的時間。這么好用的軟體你一定要親自使用才能感覺到它的威力。

4.
BlackICE
該軟體在九九年獲得了PC Magazine 的技術卓越大獎,專家對它的評語是:「對於沒有防火牆的家庭用戶來說,BlackICE是一道不可缺少的防線;而對於企業網路,它又增加了一層保護措施--它並不是要取代防火牆,而是阻止企圖穿過防火牆的入侵者。BlackICE集成有非常強大的檢測和分析引擎,可以識別 200 多種入侵技巧,給你全面的網路檢測以及系統防護,它還能即時監測網路埠和協議,攔截所有可疑的網路入侵,無論黑客如何費盡心機也無法危害到你的系統。而且它還可以將查明那些試圖入侵的黑客的NetBIOS(WINS)名、DNS名或是他目前所使用的IP地址記錄下來,以便你採取進一步行動。封言用過後感覺,該軟體的靈敏度和准確率非常高,穩定性也相當出色,系統資源佔用率極少,是每一位上網朋友的最佳選擇。

5.
Tiny Firewall
Tiny Software 公司是一家面向中小型網路路由器和防火牆軟體的開發商,最近Tiny Firewall目的是為了妨止非法使用時的不安全性,保障計算機的安全。這一版本是基於通過ICSA認證的 WinRoute Pro安全保障技術,是WinRoute 的子集,只具備防火牆功能。該項技術已經獲得成功。 Tiny Personal Firewall可以設置為手工啟動,或者設置為一個伺服器。其中包括一個桌面管理工具,可用於對本地或遠程計算機上的安全引擎進行詳細配置。用戶的安全設置有高、中、低三級,通過它的包過濾特性(packet-filtering),每一級設置還可進行不同的配置,以滿足特殊的需求。高級用戶可以建立基於斷口,應用,協議和目標的規則,每當遇到新的情況,立即提示,包括拒絕,接受或者建立處理未來動作的規則。其它的特性包括 MD5 簽名支持,密碼保護,日誌功能和高可配置的報告功能,記錄特殊的侵入動作。 Tiny Personal Firewall是一個全面,卻又簡單易用的網路防黑軟體。他可以管理你的計算機與國際網路的數據交換,會阻擋任何未經認證的用戶進入你的計算機,讀取你的檔案。支持 MD5簽名認證,可以防止特洛依程序使用計算機認可的應用程序來闖入計算機,判斷出那個程序安全與否,共有叄個安全等級可設置,可以考慮自己網路活動來作調整。 程序包含主引擎、網路狀況監視器、事件紀錄簿。如你要打開某個網頁,會問你是否允許存取。你也可以作一個過濾器,允許某個連接持續運作,限制使用那個埠(port)或者目的ip。也會紀錄所有可疑的活動到日誌中,隨時可叫出來檢查,可說相當方便有強力的一款軟體。

6.
Kaspersky
Kaspersky Anti-Hacker 是Kaspersky 公司出品的一款非常優秀的網路安全防火牆!和著名的殺毒軟體 AVP是同一個公司的作品!保護你的電腦不被黑客攻擊和入侵,全方位保護你的數據安全!所有網路資料存取的動作都會經由它對您產生提示,存取動作是否放行,都由您來決定,能夠抵擋來自於內部網路或網際網路的黑客攻擊!
與原有版本相比,新版增加了升級模塊。
新產品保留了1.5版中所有非常受歡迎的性能,包括友好的用戶界面、易用性(這對入門級的用戶特別重要)、安裝簡捷、5級防護水平選擇等。系統可在隱形模式下工作,本地的計算機可封鎖所有來自外部網路的請求,使用戶隱形和安全地在網上遨遊。
產品的新性能包括對MS SP2完全兼容,使Windows XP的用戶大為受益。

7.
McAfee Desktop Firewall
McAfee公司的一個出色的個人防火牆軟體,是基於ConSeal Private Desktop, Signal 9 Solutions 的獲得的國際認證個人防火牆軟體包。它可以保護你免受來自Internet的黑客和木馬程序等攻擊。它的特色是:保護個人信息、即時報警、詳細事件記錄、阻塞特定的互聯網系統、多層安全、24小時自動更新,還有就是整合了hackerwatch.com的資源,使得你能查看詳細的攻擊信息。
能夠對客戶端進行前瞻性的保護和控制,使其免受新威脅的攻擊,這是單純的防病毒產品無法實現的。 Desktop Firewall 針對網路和應用程序提供了全面的防火牆功能,並與入侵檢測技術完美結合。 它可以防止客戶端發送或接收非法網路流或應用程序中所攜帶的惡意攻擊。 它還可以防止合法應用程序被入侵者利用,進而在整個網路中發送或接收攻擊信息。 McAfee ePolicy Orchestrator 為 Desktop Firewall 提供了可擴展的集中式管理、部署和報告功能。 此外,Desktop Firewall 能夠與 McAfee VirusScan Enterprise 和 ePolicy Orchestrator 進行集成,從而提供了無可比擬的客戶端安全性和投資回報率

8.
費爾個人防火牆專業版
軟體說明:專業級的強大功能、個性化的設計理念、個人網路安全工具的首選。軟體完全免費、整套源程序低價出售。1.幾乎擁有專業防火牆軟體的所有強大功能 2.引入了別具特色的「流量示波器」,使得網路流量一目瞭然,生動地展現網路狀態 3.對代理上網進行了優化,用戶再也不用抱怨自己的郵件被代理伺服器盲目攔截 4.對網上鄰居共享資源進行全面控管,使區域網管理更自由、更安全 5.應用層 / 核心層雙重過濾,完全管控TCP/IP網路封包 6.防出牆 / 防入牆雙牆防護,防止信息泄漏和外來攻擊 7.對ICMP(PING)進行嚴格控制,有效保護IP地址不被探測 8.全程互動式控管規則自動生成器,對任何情況的網路動作都可以進行動態、交互、自動生成控管規則,最大程度的方便操作 9.把復雜的功能設置進行了有效的條理化分類,做到既可以讓普通用戶感覺到簡單易用,又可以讓專業人士進行復雜的安全防範配置 10.漂亮流暢的操作界面,各種人性化的設計,使用起來輕松方便 另外值得注意的是:費爾個人防火牆的整套、包括核心模塊的源程序是完全開放出售的,國際化的編程風格、結構化的設計思想、精緻詳實的源碼注釋、大量圖表的設計文檔、毫無保留的全面開放,從系統分析到代碼實現,給您一個全方位體驗,是您技術提高、贏得商機的有力支持。

9.
AnyView(網路警) V3.34軟體說明:AnyView是一款企業級的網路監控軟體。一機安裝即可監控、記錄、控制區域網內其他計算機的上網行為。用於防止單位重要資料機密文件等的泄密;監督審查限制網路使用行為;備份重要網路資源文件。主要功能有:
一、全面監控網內所有收發的郵件。
AnyView能實時記錄區域網內所有收發的郵件(包括POP3/SMTP協議和HTTP協議的郵件),同時檢測並記錄其所用的IP地址、收發時間、標題、收件人/發件人、附件、內容及郵件大小等信息。
二、監控各類聊天工具的使用。
AnyView能實時監控區域網用戶對各類聊天工具的使用情況,能檢查出在線用戶所使用的聊天工具、聊天ID、上線時間等信息,並保存。
三、記錄每個員工瀏覽過的網頁,保存上傳下載(FTP協議)的文件。
AnyView能實時記錄區域網內所有用戶瀏覽過的網頁(包括網頁標題、網頁內容、所屬網站、網頁大小等),並以網頁快照的形式供管理者查看。AnyView能實時記錄網內所有用戶通過FTP協議上傳下載的文件。
四、埠級的上網控制。
1.禁止某些電腦在指定時段上指定的網站;
2.只允許某些電腦在指定時段上指定的網站;
3.禁止某些電腦在指定時段收發郵件;
4.禁止某些電腦在指定時段通過瀏覽器收發郵件;
5.禁止某些電腦在指定時段使用指定的聊天工具(包括QQ、MSN、Yahoo Messenger、ICQ等);
6.禁止某些電腦在指定時段使用FTP工具外發資料;
7.允許自定義網頁列表阻斷:色情列表庫、游戲網站列表庫、股票網站庫、聊天網站庫、外發資料網站庫;
五、採用C/S管理模式,支持分級許可權管理。
AnyView支持伺服器和客戶端程序分開,支持多客戶連接,允許對不同客戶端賦予不同的監控許可權。
六、其他功能。
1.自動搜索區域網內的電腦,並自動解析出機器名;
2.跨平台監控;被監控電腦也可以是Unix 、Linux 等其他操作系統;
3.不需要在被監視和管理電腦上安裝任何軟體,一機運行,整網管理;
4.支持攔截內容的壓縮、備份、恢復;
5.正式版安裝以後,同一網段內,其他機器上的試用版不能正常運行。

10.
天網防火牆
SkyNet-FireWall個人版(簡稱為天網防火牆)是一款由天網安全實驗室製作的給個人電腦使用的網路安全程序。它根據系統管理者設定的安全規則(Security Rules)把守網路,提供強大的訪問控制、應用選通、信息過濾等功能。它可以幫你抵擋網路入侵和攻擊,防止信息泄露,並可與天網安全實驗室的網站(

www.SKY.NET.CN

)相配合,根據可疑的攻擊信息,來找到攻擊者。天網防火牆把網路分為本地網和互聯網,可以針對來自不同網路的信息,來設置不同的安全方案,它適合於任何撥號上網的用戶。

下載天網防火牆 2.7.5 Build 0720零售版破解補丁+IP規則數據包2.24+1000條規則:

11.
瑞星個人防火牆功能列表:
1。支持任何形式的網路接入方式。(如乙太網卡/Proxy方式、撥號上網、CableModem接入、ADSL接入、Irad接入等)
2。不影響網路通訊的速度,也不會干擾其它運行中的程序。
3。方便靈活的規則設置功能可使您任意設置可信的網路連接,同時把不可信的網路連接拒之門外。
4。保證您的計算機和私人資料處於安全的狀態。
5。提供網路實時過濾監控功能。
6。防禦各種木馬攻擊。如BO、冰河。
7。防禦ICMP洪水攻擊及ICMP碎片攻擊。
8。防禦諸如WinNuke,IpHacker之類的OOB攻擊。
9。在受到攻擊時,系統會自動切斷攻擊連接,發出報警聲音並且閃爍圖標提示。
10。詳細的日誌功能實時記錄網路惡意攻擊行為和一些網路通訊狀況;若受到攻擊時,可通過查看日誌使攻擊者原形畢露。

12.
江民防火牆
軟體說明:上網必備安全工具軟體:反黑王是一款專為解決個人用戶上網安全而設計的網路安全防護工具,產品融入了先進的網路安全四大技術,徹底阻擋黑客攻擊、木馬程序及互聯網病毒等各種網路危險的入侵,全面保護個人上網安全。有了反黑王的保護,網民再不必擔心上網帳號、QQ密碼、游戲分值、銀行帳號、郵件密碼、個人隱私及其他重要個人信息的泄漏。

13.
金山網鏢2005

14.
傲盾防火牆
強大的傲盾防火牆
網路安全一直是每一位電腦用戶都不可迴避問題,然而這又不是任何一位普通的計算機用戶就能輕松解決的問題。本文就為大家介紹一款個人防火牆軟體——「KFW傲盾防火牆」它能在網路設備和系統之間築起一道防護堡壘。
主要功能:
1、實時數據包地址 、類型過濾
2、功能強大的包內容過濾
3、包內容的截獲
4、先進的應用程序跟蹤
5、靈活的防火牆規則設置
6、實用的應用程序規則設置
7、詳細的全安紀錄
8、專業級別的包內容記錄
9、完善的報警系統
10、IP地址翻譯
11、簡捷方便漂亮的操作界面
12、強大的埠分析功能
13、強大在線模塊升級功能



15.
冰盾防火牆
全球第一款具備IDS入侵檢測功能的專業級抗DDOS防火牆,來自IT技術世界一流的美國矽谷,由華人留學生Mr.Bingle Wang和Mr.Buick Zhang設計開發,採用國際領先的生物基因鑒別技術智能識別各種DDOS攻擊和黑客入侵行為,防火牆採用微內核技術實現,工作在系統的最底層,充分發揮CPU的效能,僅耗費少許內存即獲得驚人的處理效能。經高強度攻防試驗測試表明:在抗DDOS攻擊方面,工作於100M網卡冰盾約可抵禦每秒25萬個SYN包攻擊,工作於1000M網卡冰盾約可抵禦160萬個SYN攻擊包;在防黑客入侵方面,冰盾可智能識別Port掃描、Unicode惡意編碼、SQL注入攻擊、Trojan木馬上傳、Exploit漏洞利用等2000多種黑客入侵行為並自動阻止。冰盾防火牆的主要防護功能如下: ★ 阻止DOS攻擊:TearDrop、Land、Jolt、IGMP Nuker、Boink、Smurf、Bonk、BigPing、OOB等數百種。 ★ 抵禦DDOS攻擊:SYN/ACK Flood、UDPFlood、ICMP Flood、TCP Flood等所有流行的DDOS攻擊。 ★ 拒絕TCP全連接攻擊:自動阻斷某一IP對伺服器特定埠的大量TCP全連接資源耗盡攻擊。 ★ 防止腳本攻擊:專業防範ASP、PHP、PERL、JSP等腳本程序的洪水式Flood調用導致資料庫和WEB崩潰的拒絕服務攻擊。 ★ 對付DDOS工具:XDOS、HGOD、SYNKILLER、CC、GZDOS、PKDOS、JDOS、KKDOS、SUPERDDOS、FATBOY、SYNKFW等數十種。 ★ 超強Web過濾:過濾URL關鍵字、Unicode惡意編碼、腳本木馬、防止木馬上傳等。 ★ 偵測黑客入侵:智能檢測Port掃描、SQL注入、密碼猜測、Exploit利用等2000多種黑客入侵行為並阻斷。

16.
天盾防火牆
一款專業的網路防火牆,價格低廉.既使您不付費就可以永久使用.防木馬,防黑客,是您網路安全的指南針.
主要功能:
1.網路狀態:查看當前網路數據流量及狀態.
2.應用程序:管理當前計算機上需要訪問網路的程序,防止木馬及間諜.
3.網路規則:管控網路其他計算機對您的訪問許可權,防止黑客及病毒攻擊.
4.功能選項:設置保護級別.
5.我要購買:了解注冊有關的事項

17.
趨勢PC-cillin
PC-cillin 能立即偵測並清除所有已知和未知的電腦病毒,除了傳統的開機型、檔案型及巨集型病毒外,亦可主動偵測、清除基於 Internet 全面入侵的 Java、ActiveX 等惡性程序,可全面防堵電子郵件病毒入侵,為你過濾不良網站。PC-cillin 98/2000 擁有增強的病毒掃描引擎,還有最佳的程序相容性及穩定性,佔用極少系統資源,更簡易的使用介面設計,讓你輕輕鬆鬆就做好電腦的防毒工作。

18.
安鐵諾

下載安鐵諾:

19.
諾頓個人防火牆 2005

F-Secure歐洲最好的防火牆,在2003年底,F-SECURE被評為2003 TOP TEN排名第一。該防火牆的特點是利用系統資源少,對系統操作沒有任何影響.在歐洲多數的學校和公司都採用F-SECURE的防火牆。

J. 如何獲取tinyeditor在線編輯器的內容

多看看官方網站,外語可以用GOOGLE 網頁翻譯再看

http://www.leigeber.com/2010/02/javascript-wysiwyg-editor/

你創建編輯器的時候
var instance = new TINY.editor.edit(....);

在提交表單的時候或者表單驗證通過之後
instance.post();

這樣就會取到最新更新的值.

熱點內容
內置存儲卡可以拆嗎 發布:2025-05-18 04:16:35 瀏覽:335
編譯原理課時設置 發布:2025-05-18 04:13:28 瀏覽:378
linux中進入ip地址伺服器 發布:2025-05-18 04:11:21 瀏覽:612
java用什麼軟體寫 發布:2025-05-18 03:56:19 瀏覽:32
linux配置vim編譯c 發布:2025-05-18 03:55:07 瀏覽:107
砸百鬼腳本 發布:2025-05-18 03:53:34 瀏覽:943
安卓手機如何拍視頻和蘋果一樣 發布:2025-05-18 03:40:47 瀏覽:739
為什麼安卓手機連不上蘋果7熱點 發布:2025-05-18 03:40:13 瀏覽:803
網卡訪問 發布:2025-05-18 03:35:04 瀏覽:511
接收和發送伺服器地址 發布:2025-05-18 03:33:48 瀏覽:371