編程分文件
『壹』 單片機C51程序如何分成好幾個.c和.h文件
.c文件是整個程序中的一個或幾個函數組成,在別的.C文件里可以調用它,不只是在主函數中。這樣做可以增強程序的模塊化,提高程序的可讀性。當編制好一個模塊時你可以保存在一個工程下,文件名改為**.C。這樣在另一個.C文件中的文件頭處只要你對它進行說明就可以調用它。比如#include string.c
那麼你就可以在你說明了的.C文件中調用它,這樣一個模塊可以在很多處調用,使得編程復雜度降低。程序編譯時把你所說明的文件復制到你調用處程序就可以運行了。
.H文件是對單片機一些埠及一些常用的程序的庫說明,
比如我們在程序中用到埠一即P1,我們能夠用它是因為在庫中已對它進行了說明,對P1賦予了一個埠地址,這樣程序編譯是才不會出錯,不然會提示你UNDIFINED
.C文件一般是自己創建的。而.H文件是系統自帶,不過自己也可以創建.H文件,主要對用到的一些標號進行說明,其中也可以包括一些常用的函數
用戶自己創建的.C文件是放在工程目錄下,.H文件一般放在編譯器的某個目錄下,程序編譯的時候從默認目錄中搜索,如果找到則復制到程序開頭處。
『貳』 c語言、C++:關於多文件編程
你如果是用編譯器自動生成的文件,編譯器自動加到項目里,自己寫的,你要手動在項目中添加文件,編譯器才會檢索,編譯器只檢索屬於項目的文件
1,.c或者.cpp不需要包含,如果你是用VS系列,.h和.cpp是一對的,你包含了X.h就是能使用X.cpp的資源、你自己想包含的話那也無所謂,一般是編譯器做的
2 .h可以添加實現,一切都可以添加。但是為了代碼的隱藏和符合編程的機制,一般都放到對應的.cpp。簡短的函數可以直接放在.h,你自己找起來也方便
3.包含了.h就能直接使用對應的.C。項目中這種事情一般讓編譯器去實現。其實編譯的時候,編譯器會自動檢索所有文件,只要你有聲明,實現不管你寫在哪,編譯器都會找到的,寫在對應的.h和.cpp是為了方便和規范的需要
『叄』 C語言多文件編程
多個c文件的作用在於將不同功能的代碼分開來實現,這樣便於代碼重用、代碼編譯和代碼管理。
一個程序中,只能有一個main函數,這是整個程序的起點和入口。如果其他人也實現了該函數,則必須要重新命名,然後在唯一的main函數中統一調用。
多個c文件的合並並沒有順序要求,任何一個都可以先編譯或者後編譯。
extern表示導出,可以用於函數和變數。用於函數的時候,表示這是一個外部函數,用於變數的時候,表示這是一個外部變數。
如果使用一個c文件,多個h文件,則會導致改動代碼任何一個地方,都要重新編譯所有的文件,效率上非常不劃算。而使用多個c文件,當代碼發生變更的時候,僅僅相關的c文件代碼需要重新編譯,其他代碼則可以保持不變,不用參與編譯。
函數中的局部變數無法在函數外部調用,只能通過參數傳遞的方式傳遞給第三方函數。因為局部變數是出於棧上面的,棧會隨著函數調用完畢的時候被系統回收。
『肆』 linux下C編程中實現:任意打開一個文件,獲取文件的大小,然後將該文件切分成三等分,分別存到三個文件中
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <stdio.h>
int main( int _argc, char ** _argv ){
int fd,fd1;
char buf[102400];
char *filename = NULL;
memset(buf,0x00,sizeof(buf));
filename= _argv[1];
fd=open(filename,O_RDWR | O_CREAT | O_APPEND,00777);
fd1 = lseek(fd, 0, SEEK_END);
printf("file neon size is [%d]\n", fd1);
lseek(fd, 0, SEEK_SET);
if( read( fd, buf, fd1)<0)
printf("read erro\n");
printf("file neon is [%s]",buf);
if(close(fd));
return 0;
}
這個是計算文件大小 然後取文件內容的程序 你只要把fd1除3然後讀3次就可以了 然後把讀出的值分別用write寫入3個文件就ok了
『伍』 code block s如何將在一個文件里寫好的程序分成頭文件和源文件
我最近也是在用codeblocks進行開發,你說的這個我不明白是什麼意思啊,一般codeblocks編譯並運行的話是只能夠運行一個的,因為他會監視這個程序的運行,監視的這個程序退出之後就會有一個返回碼,另外一個程序就只能從文件夾里運行了
『陸』 求C語言編程文件的分割與合並源代碼與程序框圖(課程設計)
c語言的把一個文件分成相等的兩個文件。
#include<stdio.h>
int main()
{
int len=0;
int len2=0;
FILE* stream;
FILE* stream1;
FILE* stream2;
char buf[50];
char buf1[50];
char buf2[50];
char text[1024];
printf("input anfile path to open:");
scanf("%s",buf);
stream=fopen(buf,"r+");
fseek(stream,0,SEEK_END);
len=ftell(stream);
printf("the file %s length is %d!\n",buf,len);
len2 = len/2;
printf("intput 2 file name: \n");
scanf("%s%s",buf1,buf2);
fseek(stream,0,SEEK_SET);
stream1=fopen(buf1,"w+");
stream2=fopen(buf2,"w+");
fread(text,len2,1,stream);
fwrite(text,len2,1,stream1);
fread(text,len-len2,1,stream);
fwrite(text,len-len2,1,stream2);
fclose(stream);
fclose(stream1);
fclose(stream2);
return 0;
}
文件合並
#include<stdio.h>
int main()
{
int len=0;
int len2=0;
FILE* stream;
FILE* stream1;
char buf[50];
char buf1[50];
char text[1024];
printf("input anfile path to open:");
scanf("%s",buf);
stream=fopen(buf,"r+");
fseek(stream,0,SEEK_END);
printf("intput another file name: \n");
scanf("%s",buf1);
stream1=fopen(buf1,"r+");
fseek(stream1,0,SEEK_END);
len=ftell(stream1);
fseek(stream1,0,SEEK_SET);
fread(text,len,1,stream1);
fwrite(text,len,1,stream);
fclose(stream);
fclose(stream1);
remove(buf1);//remove the another file
return 0;
}
需要在程序目錄下有文件存在
『柒』 怎樣用C編程從路徑中分離出一個文件名
聲明一個足夠長的名為fn的char型數組,調用庫函數strrchr在含路徑的全文件名中找到文件名前的'\',將其後的文件名拷貝到fn中即可。舉例代碼如下:
//#include "stdafx.h"//If the vc++6.0, with this line.
#include "stdio.h"
#include "string.h"
int main(void){
char fn[30],*p;
char pathname[80]="e:\\1\\2\\abc.dat";
//上句假設以某種方式獲得的全文件名在pathname中,"..."中只是舉例
strcpy(fn,(p=strrchr(pathname,'\\')) ? p+1 : pathname);
//上句函數第2實參這樣寫以防止文件在當前目錄下時因p=NULL而出錯
printf("%s\n",fn);//打出來看看
return 0;
}
『捌』 linux下C編程如何實現 文件的切分,合並
合並 cat 文件名1>>文件名2 把文件名1 接到文件2的末尾
切分? 不知道你是什麼意思? 是要復制當中的多少行到另一個文件? vi打開兩個文件 然後用y命令 具體可以看看vi的基本操作
『玖』 如何把一個復雜的C語言源代碼分成幾個文件,然後在dev c++上進行多文件編譯
假設我們要更改的源代碼如下:
即「No such file or directory」就是沒有文件或者路徑。說明你的路徑寫錯了,在編程時務必要注意一下。
『拾』 python編程語言:文件的使用知識分享
一、什麼是文件
日常生活中文件就是各種資料的集合,我們稱之為文件。
在Python編程中文件就是數據的抽象和集合。
在Python編程中文件方式分為:文本文件和二進制文件,其中他們的區別就是文本文件是由單一特定編碼組成,一般用於txt文檔,二進制文件是由0和1組成,沒有統一的字元編碼,一般用於png文件。
二、文件的使用
首先小編和大家分享,如何打開和關閉文件,小編先個舉個例子給大家看。
文本打開文件如下:
tf=open("f.txt","rt")
print(tf.readline())
tf.close()
二進制打開文件如下:
bf=open("f.txt","rb")
print(bf.readline())
bf.close()
這兩種打開方式區別就在於tf改為bf,rf改為rb。
三、如何把我們想用的數據寫入文件
下面小編就把自己學到的把數據寫入文件的方法分享給大家。
.write(a)向文件中寫入一個字元串和位元組流a。
.writeline(lines)向文件中寫入一個元素全是字元串的列表。
.seek(offset)調整文件的寫入開始的位置,可以是開頭,可以是中間,也可以是結尾。
關於Python編程語言:文件的使用知識分享,環球青藤小編就和大家分享到這里了,學習是永無止境的,學習一項技能更是受益終身,所以,只要肯努力學,什麼時候開始都不晚。如果您還想繼續了解關於python編程的學習方法及素材等內容,可以點擊本站其他文章學習。