C/C++ fputs 用法與範例

本篇 ShengYu 介紹 C/C++ fputs 的用法與範例,C/C++ fputs 將字串寫到 stream 裡直到遇見結束字元才停止,fputs 除了可以將字串寫入到檔案裡以外也能將字串寫入到標準輸出上,詳見本篇範例。

C/C++ 要使用 fputs 的話需要引入的標頭檔 <stdio.h>,如果要使用 C++ 的標頭檔則是引入 <cstdio>
fputs 函式原型為

1
int fputs(const char * str, FILE * stream);

str:存放字串的地方,將會被輸出到 stream
stream:指向 FILE 物件的指標

以下 C/C++ fputs 的用法介紹將分為這幾部份,

  • C/C++ fputs 寫入字串到檔案的基本用法
  • C/C++ fputs 寫入字串到標準輸出

那我們開始吧!

C/C++ fputs 將字串寫入到檔案的基本用法

這邊介紹 C/C++ fputs 寫入文字檔的基本用法,在用 fputs 來寫入文字檔前要先 fopen 開檔成功才能對檔案寫入,fopen 開檔回傳 NULL 表示開檔失敗,如果不是 NULL 表示開檔成功。

接著使用 fputs 進行寫入字串,這邊示範將 "123""456\n""hello world" 等字串寫入文字檔裡,fputs 會將字串寫入直到遇見結束字元為止,寫完後最後 fclose 關檔,

cpp-fputs.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
// g++ cpp-fputs.cpp -o a.out
#include <stdio.h>

int main() {
FILE *fp;

fp = fopen("output.txt", "w");
if (fp == NULL) {
printf("failed to open the file.\n");
return 1; // EXIT_FAILURE
}

fputs("123", fp);
fputs("456\n", fp);
fputs("hello world", fp);
fclose(fp);
return 0;
}

輸出 output.txt 的內容如下,

1
2
123456
hello world

C/C++ fputs 將字串寫入到標準輸出

C/C++ fputs 除了對檔案寫入字串以外也可以用來對標準輸出進行寫入字串,範例如下,標準輸出為 stdout 就不需要像檔案一樣開檔了,

cpp-fputs2.cpp
1
2
3
4
5
6
7
8
9
// g++ cpp-fputs2.cpp -o a.out
#include <stdio.h>

int main() {
fputs("hello world\n", stdout);
printf("123456\n");

return 0;
}

標準輸出如下,

1
2
hello world
123456

以上就是 C/C++ fputs 的用法與範例介紹,
如果你覺得我的文章寫得不錯、對你有幫助的話記得 Facebook 按讚支持一下!

其它相關文章推薦
如果你想學習 C++ 相關技術,可以參考看看下面的文章,
C/C++ 新手入門教學懶人包
C/C++ fopen 用法與範例
C/C++ fread 用法與範例
C/C++ fgets 用法與範例
C/C++ fwrite 用法與範例
C/C++ fclose 用法與範例