在linux下編程
去下個fedora
linux或者ubuntu
linux,裡面都有自帶的gcc編譯器,如果想編C的話,無論哪個都行,
編輯器大多數人是用VI,或VIM,不過在ubuntu下,只有VI,沒有VIM,
我是用我的MP3把拷貝的,可以用mount
命令掛載磁碟,然後用cp命令拷貝出來,或者用圖形界面,就像XP下一樣的
2. 如何在Linux系統下編程
用 vim 寫代碼
用 gcc 編譯 c/c++ (主要是c) 程序
用 gdb 調試
如果你要寫其他程序的話(例如 java), 那麼就要自己安裝開發環境. 推薦 <<unix環境高級編程>> <<Linux程序設計 >> , 不過考慮你沒有 Linux基礎, 建議先看一下 <<鳥哥的Linux私房菜-基礎學習篇>>
3. 在Linux下如何開發C程序
在Linux開發環境下,GCC是進行C程序開發不可缺少的編譯工具。GCC是GNU C Compile的縮寫,是GNU/Linux系統下的標准C編譯器。雖然GCC沒有集成的開發環境,但堪稱是目前效率很高的C/C++編譯器。《linux就該這么學》非常值得您一看。Linux平台下C程序開發步驟如下:
1.利用編輯器把程序的源代碼編寫到一個文本文件中。
比如編輯test.c程序內容如下:
/*這是一個測試程序*/
#include<stdio.h>
int main(void)
{
printf("Hello Linux!");
}
2.用C編譯器GCC編譯連接,生成可執行文件。
$gcc test.c
編譯完成後,GCC會創建一個名為a.out的文件。如果想要指定輸出文件,可以使用選項-o,命令如下所示:
$gcc-o test1 test.c
這時可執行文件名就變為test1,而不是a.out。
3.用C調試器調試程序。
4.運行該可執行文件。 在此例中運行的文件是:
$./a.out 或者 test1
結果將得出:
Hello Linux!
除了編譯器外,Linux還提供了調試工具GDB和程序自動維護工具Make等支持C語言編程的輔助工具。如果想要了解GCC的所有使用說明,使用以下命令:
$man gcc
4. 想在linux下C編程
你必須先找到一個主機為你開放,在鏈接 這樣才可以
5. 在linux下的編程有什麼作用
工作或者讀書等)需要學習linux的人,需要系統的學習一下,最好有一本好的書來學習。
linux是世界各地的黑客們寫出來的開源系統,對於熱愛學習計算機技術(演算法、數據結構、編程、操作系統……)的人來說,linux是一個天堂。
我個人就是完全因為興趣而搗鼓linux,和工作不沾邊。
有幾種不同的學習:
a)使用->需要學習linux的一些歷史、各種命令、桌面的操作、shell的知識
b)編程->學習linux的介面
c)系統管理->學習一些管理員需要掌握的命令
d)內核、源碼->先要學好操作系統原理,然後慢慢鑽研。
linux是一個很奇怪的東西,因為你知道的越多,你的問題就越多。
如果你將來用的上,那麼學習linux自然有用。
如果用不上,學習linux的作用在於折騰你的精力、開拓你的思維、視野、提高自學能力。從你付出的機會成本的角度來說,學習linux不合算,因為你應該把有限的時間用來學習對你更重要的東西,而不是不沾邊的linux。
除非把linux當作一種愛好。所謂「衣帶漸寬終不悔,為伊消得人憔悴」。自然是另一番感受。
當你用shell編寫個自己能用上的腳本 你就知道有用拉
而且還老有成就感拉
比如你需要搜索全盤文件,把大寫名字改為小寫,這樣的程序用幾行shell就能寫,但是無論C還是其它語言都非常麻煩,手工修改就更麻煩。
明白shell程序設計的用處嗎,任何一種語言都有他自己的適用領域
6. 在Linux下面編程。
樓上的問題,我想了下,可能時間比較短有些地方沒想好那。正常用無名管道通信的話,如果卡在這里可能是父子進程間的等待沒寫好,要不就是無名管道開關沒寫好。而且不知道樓主的程序是寫一個類似伺服器一樣的,兩邊通信。還是只是一個單個進程程序,只是為了實現父子進程通信。最好能把代碼貼出來,,要不知道你哪裡錯了。隨手寫了在一個程序中的父子進程通信,,希望對樓主能有幫助吧。(PS:不要笑我,,隨手寫的不是很規范,,,畢竟俺也是嫌麻煩的^_^)
#include<stdio.h>
#include<unistd.h>
#include<sys/types.h>
#include<string.h>
#include<sys/wait.h>
int main()
{
pid_t pid;
int fd[2];
if(pipe(fd)==-1)
{
printf("pipe error\n");
return 0;
}
pid=fork();
if(pid==0)
{
printf("please input :\n");
char buff[10];
scanf("%s",buff);
close(fd[0]);
write(fd[1],buff,strlen(buff));
printf("child write\n");
}
else if(pid>0)
{
wait(NULL);
char buff[10]={0};
close(fd[1]);
read(fd[0],buff,10);
if(strcmp("c",buff)==0)
{
printf("successful\n");
}
else{
printf("error\n");
}
}
}
7. 在linux環境下編程;
沒時間寫,看下對你是否有幫助....函數都是獲取文件(普通文件,目錄,管道,socket,字元,塊()的屬性。函數原型#include <sys/stat.h>int stat(const char *restrict pathname, struct stat *restrict buf);提供文件名字,獲取文件對應屬性。
int fstat(int filedes, struct stat *buf);通過文件描述符獲取文件對應的屬性。
int lstat(const char *restrict pathname, struct stat *restrict buf);連接文件描述命,獲取文件屬性。 2 文件對應的屬性struct stat {
mode_t st_mode; //文件對應的模式,文件,目錄等
ino_t st_ino; //inode節點號
dev_t st_dev; //設備號碼
dev_t st_rdev; //特殊設備號碼
nlink_t st_nlink; //文件的連接數
uid_t st_uid; //文件所有者
gid_t st_gid; //文件所有者對應的組
off_t st_size; //普通文件,對應的文件位元組數
time_t st_atime; //文件最後被訪問的時間
time_t st_mtime; //文件內容最後被修改的時間
time_t st_ctime; //文件狀態改變時間
blksize_t st_blksize; //文件內容對應的塊大小
blkcnt_t st_blocks; //偉建內容對應的塊數量
}; 可以通過上面提供的函數,返回一個結構體,保存著文件的信息。長湖區的信息是文件的所有者和文件的模式。#include<iostream.h>//C++ 獲得文件狀態信息源碼,C++ 獲得文件所在磁碟盤符源碼,C++ 文件創建時間源碼,C++ 訪問時間源碼,C++ 最後修改日期源碼,No such file or directory(無此文件或索引)#include <time.h>#include <sys/types.h>#include <sys/stat.h>#include <stdio.h>void main( void ){ struct stat buf; int result; //獲得文件狀態信息 result =stat( "D:\ok2002.txt", &buf ); //顯示文件狀態信息 if( result != 0 ) perror( "顯示文件狀態信息出錯" );//並提示出錯的原因,如No such file or directory(無此文件或索引) else { cout<<"文件大小:"<<buf.st_size<<"位元組"<<endl; cout<<"所在磁碟盤符 :"; cout<<char(buf.st_dev + 'A')<<endl; cout<<"文件創建時間:"<<ctime(&buf.st_ctime); cout<<"訪問日期:"<<ctime(&buf.st_atime);//注意這里訪問時間為00:00:00為正常 cout<<"最後修改日期:"<<ctime(&buf.st_mtime); }}
相關函數:utimes, stat
表頭文件:#include <sys/types.h>
#include <utime.h>
定義函數:int utime(const char *filename, struct utimbuf *buf)
函數說明:utime()用來修改參數filename文件所屬的inode存取時間。結構utimbuf定義如下
struct utimbuf{
time_t actime; /*存取時間*/
time_t modtime; /*更改時間*/
};如果參數buf為空指針(NULL), 則該文件的存取時間和更改時間全部會設為目前時間返回值: 成功0, 失敗-1, 錯誤代碼存於errno
錯誤代碼:
EACCESS 存取文件時被拒絕,許可權不足
ENOENT 指定的文件不存在
8. 到底怎麼在Linux里編寫c程序啊
在linux下通常使用gedit或vim直接編寫.c程序,然後通過gcc指令編譯。以Ubuntu系統為例,詳細過程如下:
1、進入桌面Temp文件夾
9. linux下的編程
int main() (int argc, char **argv)
多了一對空括弧,改為如下:
int main(int argc, char **argv)