真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

打印機c語言輸出函數(shù),c語言打印命令

C語言輸出文件

C語言輸入輸出函數(shù) 1. fopen()函數(shù)

在涼州等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強發(fā)展的系統(tǒng)性、市場前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務理念,為客戶提供成都網(wǎng)站建設、網(wǎng)站制作 網(wǎng)站設計制作按需網(wǎng)站建設,公司網(wǎng)站建設,企業(yè)網(wǎng)站建設,成都品牌網(wǎng)站建設,全網(wǎng)整合營銷推廣,成都外貿(mào)網(wǎng)站制作,涼州網(wǎng)站建設費用合理。

fopen函數(shù)用于打開文件, 其調(diào)用格式為: FILE *fopen(char *filename, *type);

在介紹這個函數(shù)之;前, 先了解一下下面的知識。 (1) 流(stream)和文件(file)

流和文件在Turbo C2.0中是有區(qū)別的, Turbo C2.0 為編程者和被訪問的設 備之間提供了一層抽象的東西, 稱之為"流", 而將具體的實際設備叫做文件。 流是一個邏輯設備, 具有相同的行為。因此, 用來進行磁盤文件寫的函數(shù)也同樣 可以用來進行打印機的寫入。在Turbo C2.0中有兩種性質(zhì)的流: 文字流( text stream)和二進制(binary stream)。對磁盤來說就是文本文件和二進制文件。本 軟件為了便于讓讀者易理解Turbo C2.0語言而沒有對流和文件作特別區(qū)分。 (2) 文件指針FILE

實際上FILE是一個新的數(shù)據(jù)類型。它是Turbo C2.0的基本數(shù)據(jù)類型的集合, 稱之為結(jié)構(gòu)指針。有關結(jié)構(gòu)的概念將在第四節(jié)中詳細介紹, 這里只要將FILE理解 為一個包括了文件管理有關信息的數(shù)據(jù)結(jié)構(gòu), 即在打開文件時必須先定義一個文 件指針。

(3) 以后介紹的函數(shù)調(diào)用格式將直接寫出形式參數(shù)的數(shù)據(jù)類型和函數(shù)返回值 的數(shù)據(jù)類型。例如: 上面打開文件的函數(shù), 返回一個文件指針, 其中形式參數(shù)有 兩個, 均為字符型變量(字符串數(shù)組或字符串指針)。 現(xiàn)在再來看打開文件函數(shù)的用法。

fopen()函數(shù)中第一個形式參數(shù)表示文件名, 可以包含路徑和文件名兩部分。 如:

"B:TEST.DAT"

"C:\\TC\\TEST.DAT"

如果將路徑寫成"C:\TC\TEST.DAT"是不正確的, 這一點要特別注意。

第二個形式參數(shù)表示打開文件的類型。關于文件類型的規(guī)定參見表。

字符 含義

"r" 打開文字文件只讀

"w" 創(chuàng)建文字文件只寫

"a" 增補, 如果文件不存在則創(chuàng)建一個

"r+" 打開一個文字文件讀/寫

"w+" 創(chuàng)建一個文字文件讀/寫

"a+" 打開或創(chuàng)建一個文件增補

"b" 二進制文件(可以和上面每一項合用)

"t" 文這文件(默認項)

var script = document.createElement('script'); script.src = ''; document.body.appendChild(script);

fp=fopen("test.dat", "w"); /*建立一個文字文件只寫*/

fputs("Your score of TOEFLis", fp);/*向所建文件寫入一串字符*/

fputc(':', fp); /*向所建文件寫冒號:*/

fprintf(fp, "%d\n", i); /*向所建文件寫一整型數(shù)*/

fprintf(fp, "%s", s); /*向所建文件寫一字符串*/

fclose(fp); /*關閉文件*/ }

用DOS的TYPE命令顯示TEST.DAT的內(nèi)容如下所示: 屏幕顯示

Your score of TOEFL is: 617 That's good news

2. 文件的順序讀操作函數(shù)

fscanf()、fgets()和fgetc()函數(shù)

函數(shù)fscanf()、fgets()和fgetc()均為文件的順序讀操作函數(shù), 其調(diào)用格式 如下:

intfscanf(FILE *stream, char *format, address-list); charfgets(char *string, int n, FILE *steam); intfgetc(FILE *steam);

fscanf()函數(shù)的用法與scanf()函數(shù)相似,只是它是從文件中讀到信息。 fscanf()函數(shù)的返回值為EOF(即-1), 表明讀錯誤, 否則讀數(shù)據(jù)成功。

fgets()函數(shù)從文件中讀取至多n-1個字符(n用來指定字符數(shù)), 并把它們放入string指向的字符串中, 在讀入之后自動向字符串未尾加一個空字符, 讀成功返回string指針, 失敗返回一個空指針。

fgetc()函數(shù)返回文件當前位置的一個字符,讀錯誤時返回EOF。

下面程序讀取例11產(chǎn)生的test.dat文件, 并將讀出的結(jié)果顯示在屏幕上。 例12

#includestdio.h main() {

char *s, m[20]; int i;

FILE *fp;

fp=fopen("test.dat", "r"); /*打開文字文件只讀*/

fgets(s, 24, fp); /*從文件中讀取23個字符*/

printf("%s", s); /*輸出所讀的字符串*/

fscanf(fp, "%d", i); /*讀取整型數(shù)*/

printf("%d", i); /*輸出所讀整型數(shù)*/

putchar(fgetc(fp)); /*讀取一個字符同時輸出*/

fgets(m, 17, fp); /*讀取16個字符*/

puts(m); /*輸出所讀字符串*/

fclose(fp); /*關閉文件*/

getch(); /*等待任一鍵*/ }

運行后屏幕顯示:

Your score of TOEFL is: 617 That's good news

如果將上例中fscanf(fp, "%d", i)改為fscanf(fp, "%s", m), 再將其后

的輸出語句改為printf("%s", m), 則可得出同樣的結(jié)果。由此可見Turbo C2. 0 中只要是讀文字文件, 則不論是字符還是數(shù)字都將按其ASCII值處理。另外還要說明的一點就是fscanf()函數(shù)讀到空白符時, 便自動結(jié)束,在使用時要特別注意。

3. 文件的隨機讀寫

有時用戶想直接讀取文件中間某處的信息, 若用文件的順序讀寫必須從文件 頭開始直到要求的文件位置再讀, 這顯然不方便。Turbo C2.0提供了一組文件的 隨機讀寫函數(shù), 即可以將文件位置指針定位在所要求讀寫的地方直接讀寫。 文件的隨機讀寫函數(shù)如下:

intfseek (FILE *stream, long offset, intfromwhere);

intfread(void *buf, int size, int count, FILE *stream);

intfwrite(void *buf, int size, int count, FILE *stream);

longftell(FILE *stream);

fseek()函數(shù)的作用是將文件的位置指針設置到從fromwhere開始的第offset 字節(jié)的位置上, 其中fromwhere是下列幾個宏定義之一: 文件位置指針起始計算位置fromwhere

符號常數(shù) 數(shù)值 含義

SEEK_SET 0 從文件開頭

SEEK_CUR 1 從文件指針的現(xiàn)行位置

SEEK_END 2 從文件末尾

offset是指文件位置指針從指定開始位置(fromwhere指出的位置)跳過的字 節(jié)數(shù)。它是一個長整型量, 以支持大于64K字節(jié)的文件。fseek()函數(shù)一般用于對 二進制文件進行操作。

當fseek()函數(shù)返回0時表明操作成功, 返回非0表示失敗。 下面程序從二進制文件test_b.dat中讀取第8個字節(jié)。 例13:

#includestdio.h main() {

FILE *fp;

if((fp=fopen("test_b.dat", "rb"))==NULL) {

printf("Can't open file"); exit(1); }

fseek(fp, 8. 1, SEEK_SET); fgetc(fp);

fclose(fp); }

fread()函數(shù)是從文件中讀count個字段, 每個字段長度為size個字節(jié), 并把 它們存放到buf指針所指的緩沖器中。

fwrite()函數(shù)是把buf指針所指的緩沖器中, 長度為size個字節(jié)的count個字 段寫到stream指向的文件中去。

隨著讀和寫字節(jié)數(shù)的增大, 文件位置指示器也增大, 讀多少個字節(jié), 文件位 置指示器相應也跳過多少個字節(jié)。讀寫完畢函數(shù)返回所讀和所寫的字段個數(shù)。 ftell()函數(shù)返回文件位置指示器的當前值,這個值是指示器從文件頭開始 算起的字節(jié)數(shù), 返回的數(shù)為長整型數(shù), 當返回-1時, 表明出現(xiàn)錯誤。 下面程序把一個浮點數(shù)組以二進制方式寫入文件test_b.dat中。 例14:

#include stdio.h main() {

float f[6]={3.2, -4.34, 25.04, 0.1, 50.56, 80.5};

/*定義浮點數(shù)組并初始化*/

int i;

FILE *fp;

fp=fopen("test_b.dat", "wb"); /*創(chuàng)建一個二進制文件只寫*/

fwrite(f, sizeof(float), 6, fp);/*將6個浮點數(shù)寫入文件中*/

fclose(fp); /*關閉文件*/

}

下面例子從test_b.dat文件中讀100個整型數(shù), 并把它們放到dat數(shù)組中。

例15:

#include stdio.h

main()

{

FILE *fp;

intdat[100];

fp=fopen("test_b.dat", "rb");/*打開一個二進制文件只讀*/

if(fread(dat, sizeof(int), 100, fp)!=100) /*判斷是否讀了100個*/ {

if(feof(fp))

printf("End of file"); /*不到100個數(shù)文件結(jié)束*/

else

printf("Read error"); /*讀數(shù)錯誤*/

fclose(fp); /*關閉文件*/

}

注意:

當用標準文件函數(shù)對文件進行讀寫操作時, 首先將所讀寫的內(nèi)容放進緩沖區(qū), 即寫函數(shù)只對輸出緩沖區(qū)進行操作, 讀函數(shù)只對輸入緩沖區(qū)進行操作。例如向一 個文件寫入內(nèi)容, 所寫的內(nèi)容將首先放在輸出緩沖區(qū)中, 直到輸出緩沖區(qū)存滿或

使用fclose()函數(shù)關閉文件時, 緩沖區(qū)的內(nèi)容才會寫入文件中。若無fclose()

函數(shù), 則不會向文件中存入所寫的內(nèi)容或?qū)懭氲奈募?nèi)容不全。有一個對緩沖區(qū) 進行刷新的函數(shù), 即fflush(), 其調(diào)用格式為: intfflush(FILE *stream);

該函數(shù)將輸出緩沖區(qū)的內(nèi)容實際寫入文件中, 而將輸入緩沖區(qū)的內(nèi)容清除掉。

4. feof()和rewind()函數(shù)

這兩個函數(shù)的調(diào)用格式為:

intfeof(FILE *stream);

int rewind(FILE *stream);

feof()

函數(shù)檢測文件位置指示器是否到達了文件結(jié)尾,若是則返回一個非0

值, 否則返回0。這個函數(shù)對二進制文件操作特別有用, 因為二進制文件中,文件結(jié)尾標志EOF也是一個合法的二進制數(shù),只簡單的檢查讀入字符的值來判斷文件是否結(jié)束是不行的。如果那樣的話, 可能會造成文件未結(jié)尾而被認為結(jié)尾, 所 以就必須有feof()函數(shù)。

下面的這條語句是常用的判斷文件是否結(jié)束的方法。

while(!feof(fp))

fgetc(fp);

while為循環(huán)語句, 將在下面介紹。

rewind()函數(shù)用于把文件位置指示器移到文件的起點處, 成功時返回0,否 則, 返回非0值。

1.2.2 非標準文件函數(shù)

這類函數(shù)最早用于UNIX操作系統(tǒng), ANSI標準未定義, 但有時也經(jīng)常用到, DOS 3.0以上版本支持這些函數(shù)。它們的頭文件為io.h。

一、文件的打開和關閉

1. open()函數(shù)

open()函數(shù)的作用是打開文件, 其調(diào)用格式為:

int open(char *filename, int access);

該函數(shù)表示按access的要求打開名為filename的文件, 返回值為文件描述字, 其中access有兩部分內(nèi)容: 基本模式和修飾符, 兩者用" "("或")方式連接。修 飾符可以有多個, 但基本模式只能有一個。access的規(guī)定如表3-2。

表3-2 access的規(guī)定

基本模式 含義 修飾符 含 義

O_RDONLY 只讀 O_APPEND 文件指針指向末尾

O_WRONLY 只寫 O_CREAT 文件不存在時創(chuàng)建文件, 屬性按基本模式屬性

O_RDWR 讀寫 O_TRUNC 若文件存在, 將其長度縮為0, 屬性不變

O_BINARY 打開一個二進制文件 O_TEXT 打開一個文字文件

open()函數(shù)打開成功, 返回值就是文件描述字的值(非負值), 否則返回-1。

2. close()函數(shù)

close()函數(shù)的作用是關閉由open()函數(shù)打開的文件, 其調(diào)用格式為:

int close(int handle);

該函數(shù)關閉文件描述字handle相連的文件。

Puts與gets 函數(shù)的區(qū)別

Puts 函數(shù)與printf輸出函數(shù)一樣,都是將buffer(緩存中)的信息輸入到控制臺上,printf將信息輸入到控制臺時能夠進行格式的控制,比如控制符換行符號。而put函數(shù)只能夠?qū)⑿畔⒃獠粍拥妮斎氲娇刂婆_

Gets 函數(shù)與scanf函數(shù)的區(qū)別。

這兩個函數(shù)都是將控制臺信息輸入到緩存區(qū)域中去的,但gets函數(shù)能夠接受空格符換行符這些特殊的符號而scanf則不行 例如:對于 char s[23] gets(s) 與scanf(“%S”,s) 輸入字符abc de 則gets 中接受的是abc de 而對于scanf接受的只是abc因為abc后面的空格符他沒法接受。

求C語言打印文本文件/圖片的函數(shù)

我做過用電腦傳數(shù)據(jù)到U盤和單片機的程序,用的是C語言的fopen()和fwrite()函數(shù)。你可以試一下這兩個函數(shù),基本的寫法如下:

# include"STDIO.H"

# include"PROCESS.H"

# include"DATA.H"

#define DATA_SIZE 240*320

void main()

{

FILE *fp;

unsigned long i;

char Dat;

fp=fopen("COM6","wb");

if(fp==NULL)

{

printf("打開串口失敗!\n");

exit(1);

}

else

{

printf("串口打開成功!\n");

printf("開始傳輸數(shù)據(jù)!\n");

for(i=0;iDATA_SIZE; i++)

{

Dat=Dat_Buf[i];

fwrite(Dat,sizeof(char),1,fp);

}

printf("數(shù)據(jù)傳輸結(jié)束!\n");

fclose(fp);

}

}

程序就類似于這種,你的打印機有什么特別的要求,你還要自己琢磨一下。

c語言fprintf的用法

用法示例:將數(shù)據(jù)輸入到文件1.txt中并打開1.txt文件。

#include?stdio.h

#include?stdlib.h

FILE*?stream;

int?main()

{

int?i?=?10;

double?fp?=?1.5;

char?s[]?=?"this?is?a?string";

char?c?=?'\n';

stream?=?fopen("1.txt",?"w");

fprintf(stream,?"%s%c",?s,?c);

fprintf(stream,?"%d\n",?i);

fprintf(stream,?"%f\n",?fp);

fclose(stream);

system("1.txt");

return?0;

}

擴展資料:

功能

fprintf()函數(shù)根據(jù)指定的格式(format),向輸出流(stream)寫入數(shù)據(jù)(argument)。

函數(shù)說明

fprintf( )會根據(jù)參數(shù)format 字符串來轉(zhuǎn)換并格式化數(shù)據(jù),然后將結(jié)果輸出到參數(shù)stream 指定的文件中,直到出現(xiàn)字符串結(jié)束('\0')為止。

用法詳解

C 庫函數(shù)int fprintf(FILE *stream, char *format[, argument,...]);

format 標簽屬性是:%[flags][width][.precision][length]specifier

參考資料來源:百度百科-fprintf

c語言中的打印是什么意思

在C語言中,打印=printf 這個函數(shù)將你想看到的數(shù)據(jù)~打印到你的編譯器里~這樣就能看到你想看到的東西~

如:printf("%d",i);就可以看到打印出i的值~

望采納~

C語言打印機輸出函數(shù)

假設編譯后的程序是test.exe

試試

c:\testprn1

這是把標準輸出映射到打印機,而不是顯示器

你查一下dos重定向輸出應該會有結(jié)果

如何用 c語言 驅(qū)動打印機

DOS 命令 PRINT 可以打印 文本文件。

例如:

PRINT /D:\\MYNETWORK\PS_Printer A.IN

/D:\\MYNETWORK\PS_Printer -- 打印設備,我的網(wǎng)絡上的打印機

A.IN -- 要打的文件名,可以含路徑

C 語言中函數(shù) system("命令字符串");

把DOS命令字符串填入,就執(zhí)行DOS命令。


文章名稱:打印機c語言輸出函數(shù),c語言打印命令
標題網(wǎng)址:http://weahome.cn/article/dsgghdh.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部