當前位置:首頁 » 操作系統 » linuxc寫文件

linuxc寫文件

發布時間: 2022-04-29 10:55:11

1. 如何在linux里寫c程序

編輯用vim,linux下正統的編輯器。
編譯就裝個gcc,「g++
xxx.cpp」
編譯之後會產生一個可執行文件,默認是a.out
執行可以這樣./a.out
調試用gdb,例如gdb
a.out
具體使用方法可以去網上找找,這些都是linux下的常用工具,資料很多的。建議樓主多看些資料。

2. 關於linux C的文件讀寫

#include <stdio.h>
#include <string.h>
#include <stdlib.h>

#define MAX 1024

void lower1(char *p)
{
int i,len;
len = strlen(p);
for(i=0;i<len;i++)
if(p[i] >= 'A' && p[i] <= 'Z')
p[i] += 32;
}

int main(void)
{
FILE *fp,*fpw;
char *p;
char buf[MAX],buf1[MAX]="GAME OVER";
int n,m;
fp = fopen("txt","rw");
if(fp == NULL)
{
perror("Fail to open");
exit(1);
}

while((n = fread(buf,sizeof(char),MAX-1,fp)) > 0)
{
buf[n]='\0';
lower1(buf);
printf("%s",buf);
printf("%d",n);
}
rewind(fp);
while((n = fread(buf,sizeof(char),MAX-1,fp)) > 0) //你這里什麼意思?你這里有問題
{
fputs(buf,fp);
}

if(n < 0){
perror("Fail to read");
exit(1);
}

fclose(fp);
return 0;
}

順便,看樣子你也知道,讀寫無法同時進行的,所以,你讀萬,一定要rewind一下

3. linux下如何用C程序讀寫本地文件

是一樣的。如果是同目錄則直接寫文件名,如果是不同的目錄,可以寫明路徑。

如:
讀同目錄文件local.txt
fopen("local.txt","r");

讀不同目錄文件 /home/yourname/otherdir/other.txt
fopen("/home/yourname/otherdir/other.txt","r");

你可以使用pwd命令來獲得文件路徑

4. 怎麼用linux寫c語言

Linux正在成為開發人員的編程天堂,成為開源和免費操作系統。 Turbo C編譯器已經是一種編譯程序的舊方法,所以讓程序員轉向Linux以獲得新的編程環境。 在本文中,我們將解釋如何編寫,編譯和運行一個簡單的C程序。 這將成為您遷移到可以在Linux上編寫和執行的更復雜和有用的C程序的基礎。

我們在Ubuntu 18.04 LTS系統上運行了本文中提到的步驟和命令。

我們將使用Linux命令行工具Terminal,以編譯一個簡單的C程序。 要打開終端,您可以使用Ubuntu Dash或Ctrl + Alt + T快捷方式。

第1步:安裝build-essential軟體包

為了編譯和執行C程序,您需要在系統上安裝必要的軟體包。 在Linux終端中以root用戶身份輸入以下命令:

sudo apt-get install build-essential

系統會要求您輸入root用戶密碼; 安裝過程將在此之後開始。 請確保您已連接到互聯網。

第2步:編寫一個簡單的C程序

安裝必要的軟體包之後,讓我們編寫一個簡單的C程序。

打開Ubuntu的圖形文本編輯器,將以下示常式序寫入或復制到其中:

#include<stdio.h>

int main()

{

printf("nA sample C program www.linuxidc.comnn");

return 0;

}

然後使用.c擴展名保存文件。 在這個例子中,我將我的C程序命名為linuxidc.c

或者,您可以通過gedit中的終端編寫C程序,如下所示:

gedit linuxidc.c

這將創建一個.c文件,您可以在其中編寫和保存程序。

第3步:使用gcc編譯C程序

在終端中,輸入以下命令以生成您編寫的程序的可執行版本:

句法:

$ gcc [programName].c -o programName

示例:

$ gcc linuxidc.c -o linuxidc

5. c語言如何讀寫 linux文本文件

Linux下C語言的文件(fputc,fgetc,fwrite,fread對文件讀寫操作)

//

fputc 向文件寫入字元

#include <stdio.h>

#include <stdlib.h>

main()

{

FILE *fp;

char ch;

if((fp=fopen("test.txt","w"))==NULL)

{

printf("不能打開文件 ");

exit(0);

}

while ((ch=getchar())!=' ')

fputc( ch, fp );

fclose(fp);

}

-------------

小提示:

fp=fopen("test.txt","w") ,把"w"改為 "a" 可以創建文件並且追加寫入內容

exit(0); 需要包含 stdlib.h 頭文件,才能使用

//

fgetc 讀取字元

#include <stdio.h>

#include <stdlib.h>

main( int argc, char *argv[] )

{

char ch;

FILE *fp;

int i;

if((fp=fopen(argv[1],"r"))==NULL)

{

printf("不能打開文件 ");

exit(0);

}

while ((ch=fgetc(fp))!=EOF)

putchar(ch);

fclose(fp);

}

文件結尾,通過判斷 EOF

//

fwrite 的使用

使數組或結構體等類型可以進行一次性讀寫

#include <stdio.h>

#include <stdlib.h>

main()

{

FILE *fp1;

int i;

struct student{

char name[10];

int age;

float score[2];

char addr[15];

}stu;

if((fp1=fopen("test.txt","wb"))==NULL)

{

printf("不能打開文件");

exit(0);

}

printf("請輸入信息,姓名 年齡 分數1 分數2 地址: ");

for( i=0;i<2;i++)

{

scanf("%s %d %f %f %s",stu.name,&stu.age,&stu.score[0],&stu.score[1], stu.addr);

fwrite(&stu,sizeof(stu),1,fp1);

}

fclose(fp1);

}

//

fread 的使用

#include <stdio.h>

#include <stdlib.h>

main()

{

FILE *fp1;

int i;

struct student{

char name[10];

int age;

float score[2];

char addr[15];

}stu;

if((fp1=fopen("test.txt","rb"))==NULL)

{

printf("不能打開文件");

exit(0);

}

printf("讀取文件的內容如下: ");

for (i=0;i<2;i++)

{

fread(&stu,sizeof(stu),1,fp1);

printf("%s %d %7.2f %7.2f %s ",stu.name,stu.age,stu.score[0],stu.score[1],stu.addr);

}

fclose(fp1);

}

//

fprintf , fscanf, putw , getw , rewind , fseek 函數

這些函數的話我就不演示了 ,

這些函數基本都一對來使用,例如 fputc 和 fgetc 一起來用.

6. linux下怎麼創建c文件

用vi hello.c 或者touch hello.c。

然後寫代碼,用gcc編譯就可以了 ,wq是vi編輯器帶的命令 ,需要切換到命令模式 然後輸入wq回車就退出存檔了 ,直接在linux下輸入是沒用的,需要切換到vi的命令模式,你可以參考下vi的使用教程來學習,當然你可以用其他的編輯器 。

在VI的普通模式下按shift+ 兩次Z就是存檔退出。

7. 如何在linux下編寫大型c程序

Linux下面開發C程序的過程大致為:編輯源文件--調試--編寫makefile文件--編譯及安裝(發布的話打包源碼發布或者打包rpm、deb發布)。
(1)編輯源文件的方式有很多種,厲害的可以使用vim,配合插件,據說很牛,我只會基本操作,i,wq之類的。推薦學一下vim,學會了很厲害,學不會也最起碼保證打開文件,編輯文件,保存文件沒問題。有小改動的時候,我會使用vim。
或者使用windows下面的notepad,有大改動的時候我會配合smb使用notepad。
再或者在ubuntu下面安裝eclipse,進行文件編輯,對於熟悉eclipse是不錯的選擇。
(2)調試:
小型的程序,gdb就行
大點的程序,找IDE吧,比如eclipse
(3)對於makefile文件,小型的程序可以自己編寫,大點的使用autotool工具生成,至於autotool工具如何使用,請自行上網搜。
使用eclipse的話,配置好之後進行編譯。
(4)安裝問題:有makefile的話,linux安裝程序的經典步驟 configure,make,make install即可。
如果不是很大型的話,把自己的代碼放在/usr/local軟體名/下面,需要的庫放在系統庫路徑下,或者把運行路徑添加到環境變數中。也能運行。
(5)發布的時候
打包源碼發布,.tar.gz
打包成rpm、deb包,自行搜索教程。

我也在摸索中,分享一下經驗,僅供參考,如有出錯,還請見諒。

8. Linux編程,怎樣用C語言創建、讀、寫文件呀希望各位賜教!謝謝

既然得到了這文件指針,你想怎麼打開都行,無需知道以前是什麼模式。
用open更新你想要的打開方式。
o_rdonly
以只讀方式打開文件
o_wronly
以只寫方式打開文件
o_rdwr
以可讀寫方式打開文件。上述三種旗標是互斥的,
也就是不可同時使用,
但可與下列的旗標利用or(|)運算符組合。
o_creat
若欲打開的文件不存在則自動建立該文件。
o_excl
如果o_creat
也被設置,
此指令會去檢查文件是否存在。文件若不存在則建立該文件,
否則將導致打開文件錯誤。此外,
若o_creat與o_excl同時設置,
並且欲打開的文件為符號連接,
則會打開文件失敗。
o_noctty
如果欲打開的文件為終端機設備時,
則不會將該終端機當成進程式控制制終端機。
o_trunc
若文件存在並且以可寫的方式打開時,
此旗標會令文件長度清為0,
而原來存於該文件的資料也會消失。
o_append
當讀寫文件時會從文件尾開始移動,
也就是所寫入的數據會以附加的方式加入到文件後面。
o_nonblock
以不可阻斷的方式打開文件,
也就是無論有無數據讀取或等待,
都會立即返回進程之中。
o_ndelay
同o_nonblock。
o_sync
以同步的方式打開文件。
o_nofollow
如果參數pathname
所指的文件為一符號連接,
則會令打開文件失敗。
o_directory
如果參數pathname
所指的文件並非為一目錄,
則會令打開文件失敗。
這是你要的
r
打開只讀文件,
該文件必須存在。
r+
打開可讀寫的文件,
該文件必須存在。
w
打開只寫文件,
若文件存在則文件長度清為0,
即該文件內容會消失。若文件不存在則建立該文件。
w+
打開可讀寫文件,
若文件存在則文件長度清為零,
即該文件內容會消失。若文件不存在則建立該文件。
a
以附加的方式打開只寫文件。若文件不存在,
則會建立該文件,
如果文件存在,
寫入的數據會被加到文件尾,
即文件原先的內容會被保留。
a+
以附加方式打開可讀寫的文件。若文件不存在,
則會建立該文件,
如果文件存在,
寫入的數據會被加到文件尾後,
即文件原先的內容會被保留。

9. LINUX C語言寫一個讀寫文件的程序,讀取的話,要把文件內容顯示出來,寫的話,就是寫進文件裡面咯

#include<stdio.h>
#include<stdlib.h>

intmain()
{
FILE*pf=fopen("a.txt","r");
if(pf==NULL){
printf("opena.txtfilefailed! ");
exit(0);
}

FILE*pf2=fopen("b.txt","w");
if(pf2==NULL){
printf("openb.txtfilefailed! ");
fclose(pf);
exit(0);
}

charch;
while(!feof(pf)){
ch=fgetc(pf);
putchar(ch);
fputc(ch,pf2);
}

fclose(pf2);
fclose(pf);

return0;
}


熱點內容
垃圾緩存的英文 發布:2024-10-05 01:13:34 瀏覽:947
md5加密c實現 發布:2024-10-05 01:13:31 瀏覽:299
updatesql兩個表 發布:2024-10-05 01:13:30 瀏覽:4
趙南起韓國訪問 發布:2024-10-05 01:04:00 瀏覽:985
基於pid演算法 發布:2024-10-05 00:41:22 瀏覽:925
有什麼手機配置低的還好玩 發布:2024-10-05 00:40:23 瀏覽:669
redis資料庫查詢 發布:2024-10-05 00:27:43 瀏覽:946
如何消除安卓的彈窗 發布:2024-10-05 00:26:59 瀏覽:427
wget下載文件夾 發布:2024-10-05 00:26:22 瀏覽:44
mysql調用存儲過程out 發布:2024-10-05 00:03:30 瀏覽:231