在Linux開發環境上學習C語言,對于一個從零開始學習嵌入式的門外漢來說,是一個很好的選擇,學習了C語言,又熟悉了Linux 操作系統。
1. 開發工具下載及安裝:
虛擬機 VMware 10
下載地址:https://download3.vmware.com/software/wkst/file/VMware-workstation-full-10.0.0-1295980.exe
Ubuntu 12.04
下載地址:http://releases.ubuntu.com/12.04/
VMware虛擬機上安裝在Windows中的一個虛擬電腦的軟件。因為我們需要用到linux的真實環境,又不能完全脫離windows的一些文件操作,再在虛擬機中安裝Ubuntu 12.04系統。
注冊
最后一步要求輸入許可證密鑰,本站提供親測可用的注冊密鑰,授權形式為批量,并且永不過期,即永久激活,注冊碼地址:http://www.ihacksoft.com/vmware-workstation-10-0.html
VMware Workstation 10另外一個特點是內置了簡體中文,
如上圖:在虛擬機上安裝了ubuntu, windows和Linux切換起來非常方便
2. GCC編譯環境的安裝
1、gcc
要進行C語言編程,首先得有個C語言的編譯器,Linux下常用的是GNU C Compiler gcc。
比如cpp-4.1和gcc-4.1、cpp-3.3和gcc-3.4
2、cpp
gcc要進行程序編譯,首先需要進行一個預編譯過程。該過程對程序源代碼進行預處理。
3、libgcc1
gcc還依賴于libgcc1這個軟件包。libgcc1是用于gcc軟件自身的必須組件。
4、libc6
C語言程序要能夠運行,需要一些運行時庫文件和一些庫文件操作命令。libc6這個軟件包就是用來提供這些的。這個軟件包幾乎是Linux系統自帶的,因為所有C程序的運行都離不開此軟件包。
5、binutils
程序從源代碼到可執行程序的過程中,必然需要一些工具來輔助完成。binutils軟件包就是提供一些工具的,這個軟件包提供下面這些非常有用的命令:
6、locales
這個軟件包提供本地語言環境支持
雖然上面列了這么多必需的軟件包,但實際上因為他們之間有依賴關系,所以在安裝完系統后我們只需要輸入下面一個命令:
apt-get install gcc
系統就會自動幫忙把這些軟件包安裝上。
2.在Ubuntu配置VIM配置編輯環境
編譯和調試環境安裝好了,該裝編輯器了,VIM是個入門難,但用熟了會極大提高編輯效率的工具,其實入門也不算難,用一周基本長常用的20%的功能就都熟悉了,老樣子用apt-get install vim安裝,裝好后運行vim命令,確保版本是7.1以上。裝好后為了編輯方便,先啟用語法高亮顯示,自動縮進,顯示行號等,用VIM編輯VIM的配置文件vim /etc/vim/vimrc,在末尾加上如下設置
1. syntax on
2. set autoindent
3. set cindent
4. set nu
先簡單設置這些,以后再設置配色方案,自動提示,文件列表等功能,VI的使用,大家可以看看VI的中文手冊
編寫簡單的C程序
我們先寫一個統計字符個數的程序
然后編程程序,執行程序
3. vi編輯器的命令
(1)強制退出
底行命令:
:q!
(2)打開其他文件
底行命令:
:e 文件路徑
:e! 文件路徑 ---- 忽略修改
(3)讀取其他文件內容到光標所在的下一行
底行命令:
:r 文件路徑
(3)保存vi編輯器中的內容到另外的文件
底行命令:
:w 文件路徑
(4)移動光標
h j k l ----- 左 下 上 右
(5)翻頁
ctrl+u ------- 向前翻半頁
ctrl+d -------- 向后翻半頁
ctrl+b ------- 向前翻一頁
ctrl+f -------- 向后翻一頁
(6)移動光標
^:移動到光標所在的行的第一個非空格字符
Home鍵:移動到光標所在的行的第一個字符
$/End鍵:移動到光標所在的行的最后一個字符
w:移動光標到下一個單詞的首字母
b:移動光標到前一個單詞的首字母
e:移動光標到下一個單詞的尾字母
注:以上3個命令前加數字表示移動多少個單詞
G:前面加數字移動到指定的行,不加數字移動到最后一行
(7)設置行號
底行命令:
:set nu
(8)進入編輯模式
A:移動到本行末進入編輯模式
cw:刪除光標所在位置到所在單詞末尾的字符,進入編輯模式
c$:刪除光標所在位置到本行行尾的字符,進入編輯模式
c^:刪除本行行首到光標所在位置(不包括)的字符,進入編輯模式
(9)編輯模式下的按鍵操作
方向鍵移動光標
Home鍵:移動到本行第一個字符
End:移動到本行最后一個字符
PageUp/PageDown:向上/向下翻頁
退格鍵/del鍵:刪除光標前一個/所在的字符
(10)刪除(剪切)命令
dw:刪除光標到所在單詞尾的所有字符,包括單詞后的空格鍵
de:刪除光標到所在單詞尾的所有字符,不包括單詞后的空格鍵
d$:刪除光標到所在行行尾的所有字符,包括光標
d^:刪除光標所在行行首到光標的所有字符,不包括光標
dG:刪除光標所在行到文件尾
dgg:刪除文件開頭到光標所在行
J:刪除本行的最后換行符,相當于將下一行合并到本行末尾
注:把上述命令的d改成c就會在完成操作后進入編輯模式
(11)撤銷操作
u:撤銷上一次的操作
U:撤銷對當前行的上一次操作
ctrl+r:u的反操作
(12)拷貝命令
yw:拷貝光標到所在單詞尾的所有字符,包括單詞后的空格鍵
ye:拷貝光標到所在單詞尾的所有字符,不包括單詞后的空格鍵
y$:拷貝光標到所在行行尾的所有字符,包括光標
y^:拷貝光標所在行行首到光標的所有字符,不包括光標
yG:拷貝光標所在行到文件尾
ygg:拷貝文件開頭到光標所在行
(13)查找文件內容
底行命令:
/word ---------- 在文件中向下查找word內容
?word ----------- 在文件中向上查找word內容
n/N:定位前一個/后一個查找到的內容
注:*可以快速查找光標所在的單詞
查找的時候可以只查找單詞開頭部分或者結尾部分
\
the\> ------- 以the結尾的單詞
.可以代表一個任意字符
(14)替換文件內容
底行命令:
:s/old/new ----------- 將本行第一個old替換成new
:s/old/new/g ----------- 將本行所有old替換成new
:#,#s/old/new/g ------ 將(#,#)行所有old替換成new
:%s/old/new/g ------ 將文件中的所有old替換成new
可以在命令后加c讓用戶對每一次替換進行確認
(15)補充命令
% --------- 移動光標到配對的括號
. --------- 重復上一個命令
v ---------- 進入可視模式,選擇的文本會被高亮,可以對選中的部分進行d(剪切),y(拷貝)操作
底行命令:
:vs 路徑 ----------- 水平顯示打開的文件
:sp 路徑 ----------- 垂直顯示打開的文件
ctrl+ww來在不同的文件之間切換
(16)打開多個文件的操作
vi 路徑1 路徑2 路徑3 ...........
相關底行命令
:args ------------- 顯示打開的所有文件
:next ------------- 切換到后一個文件
:prev ------------- 切換到前一個文件
:first ------------ 切換到第一個文件
:last ------------- 切換到最后一個文件
ctrl+^可以立即切換到前一個操作的文件
4.總結:
其實編輯器除了用vi 還可以用gedit, dwrite, kate圖形化編輯器,自己選擇一個習慣的就行了,只是vi編輯工具在今后的終端上會經常用到,所以一般要求掌握它的用法。
想學習更多linux干貨,點擊“了解更多”
C++是一種通用編程語言,它具有命令式,面向對象和通用編程功能。
C++可在Windows,Linux,Unix,Mac等許多平臺上運行。在我們開始使用C ++進行編程之前。我們將需要在本地計算機上設置一個環境,以成功編譯和運行我們的C ++程序。如果您不想設置本地環境,也可以使用在線IDE來編譯程序。
使用在線IDE
IDE代表集成開發環境。IDE是一個軟件應用程序,它為計算機程序員提供了開發軟件的便利。您可以使用許多在線IDE來輕松地編譯和運行程序,而無需設置本地開發環境。
ide.geeksforgeeks.org是GeeksforGeeks提供的一種IDE。您可以單擊“Run on IDE”按鈕以運行程序。
#include<iostream>
using namespace std;
main()
{
cout << "Learning C++ at GeekforGeeks";
}
設置本地環境
為了在本地計算機上設置自己的個人開發環境,您需要安裝兩個重要的軟件:
1. 文本編輯器:文本編輯器是用于編輯或編寫文本的程序類型。我們將使用文本編輯器鍵入C ++程序。文本文件的常規擴展名是(.txt),但是包含C ++程序的文本文件應以“ .CPP”或“ .C”擴展名保存。以擴展名“ .CPP”和“ .C”結尾的文件稱為源代碼文件,它們應該包含以C ++編程語言編寫的源代碼。這些擴展名有助于編譯器識別該文件包含C ++程序。
在開始使用C ++進行編程之前,必須已安裝文本編輯器才能編寫程序。
2. C++編譯器:安裝了文本編輯器并鍵入擴展名并將其保存在擴展名為“ .CPP”的文件中后,您將需要C ++編譯器來編譯此文件。 編譯器是一種計算機程序,可以將高級語言轉換為機器可理解的低級語言。 換句話說,可以說它會將以編程語言編寫的源代碼轉換為計算機可以理解的另一種計算機語言。 為了編譯C ++程序,我們需要一個C ++編譯器,它將C ++編寫的源代碼轉換為機器代碼。
以下是有關在不同平臺上設置編譯器的詳細信息。
Linux安裝
我們將在Linux上安裝GNU GCC編譯器。要在Linux機器上安裝并使用GCC編譯器,請按照以下步驟操作:
1.您必須首先在Linux終端窗口中運行以下兩個命令:
sudo apt-get update
sudo apt-get install GCC
此命令將在您的系統上安裝GCC編譯器。 您也可以運行以下命令:
sudo apt-get install build-essential
該命令將安裝編譯和運行C ++程序所需的所有庫。
2.完成上述步驟后,應檢查系統中是否正確安裝了GCC編譯器。為此,您必須在Linux終端上運行以下命令:
g++ --version
3.如果您已完成上述兩個步驟而沒有任何錯誤,則說明您的Linux環境已建立并準備好用于編譯C ++程序。在進一步的步驟中,我們將學習如何使用GCC編譯器在Linux上編譯和運行C ++程序。
4.將程序編寫為文本文件,并以任何文件名和.CPP擴展名保存。我們編寫了一個顯示“ Hello World”的程序,并將其保存在桌面上的文件名為“ helloworld.cpp”的文件中。
5.現在,您必須打開Linux終端并移至保存文件的目錄。然后,您必須運行以下命令來編譯文件:
g++ filename.cpp -o any-name
filename.cpp是您的源代碼文件的名稱。 在我們的例子中,名稱是“ helloworld.cpp”,any-name可以是您選擇的任何名稱。 該名稱將分配給編譯器在編譯后創建的可執行文件。 在我們的例子中,我們選擇任意名稱為“ hello”。
我們將以如下方式運行上述命令:
g++ helloworld.cpp -o hello
6.執行上述命令后,您將看到在保存源文件的同一目錄中自動創建了一個新文件,該文件的名稱是您選擇為任意名稱的名稱。
現在要運行程序,您必須運行以下命令:
./hello
此命令將在終端窗口中運行您的程序。
Windows安裝
有許多可用于Windows操作系統的IDE,您可以使用它們輕松地使用C ++編程語言。 流行的IDE之一是Code :: Blocks。 要下載Code :: Blocks,您可以訪問此鏈接(http://www.codeblocks.org/downloads/26)。 從給定鏈接下載Code :: Blocks的安裝文件后,將其打開并按照說明進行安裝。
Mac OS X安裝
如果您是Mac用戶,則必須下載Xcode。 要下載Xcode,您必須訪問Apple網站,也可以在Apple App Store上搜索它。 您可以點擊鏈接developer.apple.com/technologies/tools/下載Xcode。 您將在此處找到所有必要的安裝說明。