標準輸入輸出(C++)

輸入輸出流函數(模板)

#include<iostream>
#include<iomanip>
using namespace std;
int main()
{cout << setiosflags(ios::left|ios::showpoint);        //設左對齊cout.precision(5);                                //設置除小數點外有五位有效數字cout << 123.456789 << endl;cout.width(10);                                //設置顯示域寬 10cout.fill('*');                                    // 在顯示區域空白處用*填充cout << resetiosflags(ios::left);                    //清除狀態左對齊cout << setiosflags(ios::right);                    //設置右對齊cout << 123.456789<<endl;    cout << setiosflags(ios::left|ios::fixed);                //設置左對齊,以固定小數位顯示cout.precision(3);                                //設置實數顯示三位小數cout << 999.1234457 << endl;                cout << resetiosflags(ios::left|ios::fixed);            //清除狀態左對齊和定點格式cout << setiosflags(ios::left|ios::scientific);            //設置左對齊以科學技術法顯示cout.precision(3);                                設置保留三位小數cout << 123.45678 << endl;return 0;
}

運行結果:

exbot@ubuntu:~/wangqinghe/C++/time$ ./cout

123.46

****123.46

999.123

1.235e+02

?

cout.self和setiosflags一樣,cout.precision和setprecision一樣,cout.unself和resetiosflags一樣。

setiosflags(ios::fixed)

固定的浮點顯示

setiosflags(ios:: scientific)

指數表示

setiosflags(ios:: left)

左對齊

setiosflags(ios:: right)

右對齊

setiosflags(ios:: skipws)

忽略前導空白

setiosflags(ios:: uppercase)

16進制大寫輸出

setiosflags(ios:: lowercase)

16進制小寫輸出

setiosflags(ios:: showpoint)

強制顯示小數點

setiosflags(ios:: showpos)

強制顯示符號

cout.self常見的標示:

標志

功能

boolalpha

可以使用單純“true”和“false”來進行輸入/輸出的布爾值

oct

用八進制格式顯示數值

dec

用十進制格式顯示數值

hex

用十六進制格式顯示數值

left

輸出調整為左對齊

right

輸出調整為右對齊

scientific

用科學記數法顯示浮點數

fixed

用正常計數方法顯示浮點數(與科學記數法相對應)

showpoint

顯示小數點和額外的零,即使不需要

showbase

輸出時顯示所有數值的基數

showpos

在非負數值前面顯示“+”

skipws

當一個流進行讀取時,跳過空白字符(space,tabs,newlines)

unitbuf

在每次插入以后,清空緩沖區

internal

將填充字符回到符號和數值之間

uppercase

以大寫的形式顯示科學記數法中的“e”和十六進制格式的“x”

iostream中定義的操作符:

操作符

描述

resetiosflag(long f)

關閉被指定為f的標識

setbase(int base)

設置數值的基本數為base

setfill(int ch)

設置 填充字符為ch

setiosflags(long f)

啟用指定為f的標示

setprecision(int p)

設置數值的精度(四色五入)

serw(int w)

設置域寬度為w

轉載于:https://www.cnblogs.com/wanghao-boke/p/11305027.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/384903.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/384903.shtml
英文地址,請注明出處:http://en.pswp.cn/news/384903.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

拷貝函數和構造函數

類的構造函數&#xff1a; 類的構造函數是類的一種特殊的成員函數&#xff0c;它會在每次創建類的新對象時執行。 構造函數的名稱與類的名稱是完全相同的&#xff0c;并且不會返回任何類型&#xff0c;也不會返回void。 構造函數可用于為某些成員變量初始值。 默認的構造函數是…

拷貝構造函數

拷貝構造函數是一種特殊的構造函數&#xff0c;它在創建對象時&#xff0c;使用的是同一類中之前創建的對象來初始化新創建的對象。拷貝構造函數通常用于&#xff1a; l 通過使用另一個同類型的對象來初始化新創建的對象&#xff1b; l 復制對象把它作為參數傳遞給函數&#…

Linux進程通信之管道

進程間完成數據傳遞需要借助操作系統提供的特殊的方法&#xff0c;比如&#xff1a;文件、管道、信號、共享內存、消息隊列、套接字、命名管道等。但現在常用的進程間通信方式有&#xff1a; 管道 – 使用最簡單 pipe 管道一般讀寫行為 FIFO&#xff08;有名管道&#xff09;&a…

Linux進程通信之文件

父子進程共享打開的文件描述符------使用文件完成進程間通信. /*** fork_share_fd.c***/ #include <stdio.h> #include <unistd.h> #include <string.h> #include <stdlib.h> #include <fcntl.h> #include <sys/wait.h>int main(void) {in…

dup2函數

將當前系統中的進程信息打印到文件中 命令行&#xff1a;ps aux > out 將ps得到的信息重定向到out文件中 使用dup2文件在程序中完成。 int dup2(int oldfd,int newfd); /*** dup2.c ***/ #include<stdio.h> #include<fcntl.h> #include<unistd.h> #includ…

wait()函數

wait()函數&#xff1a;回收僵尸進程 父進程調用wait函數可以回收子進程終止信息。該函數有三個功能&#xff1a; 1&#xff09; 阻塞等待子進程退出 2&#xff09; 回收子進程殘留資源 3&#xff09; 獲取子進程結束狀態&#xff08;退出原因&#xff09; /*** zoom_test.c **…

waitpid()函數

waitpid函數 作用同于wait&#xff0c;但可指定pid進程清理&#xff0c;可以不阻塞。 pid_t waitpid(pid_t pid,int *status,int options);成功&#xff1a;返回清理掉的子進程ID&#xff1b;失敗&#xff1a;-1&#xff08;無子進程&#xff09; 特殊參數和返回情況&#xff1…

孤兒進程、僵尸進程

孤兒進程&#xff1a;父進程先于子進程結束&#xff0c;則子進程成為孤兒進程&#xff0c;子進程的父進程成為init進程&#xff0c;稱為init進程領養孤兒進程。 /*** orphan.c ***/ #include <stdio.h> #include <unistd.h> #include <sys/wait.h>int main(v…

友元函數

類的友元函數是定義在類外部&#xff0c;但有權訪問類的所有私有成員和保護成員。盡管友元函數的原型有在類的定義中出現過&#xff0c;但友元函數并不是成員函數。 友元可以是一個函數&#xff0c;該函數被稱為友元函數&#xff1b;友元也可以是一個類&#xff0c;該類被稱為友…

this指針

在C中&#xff0c;每一個對象都能夠通過this指針來訪問自己的地址。this指針是所有成員函數的隱含參數。因此&#xff0c;在成員函數內部&#xff0c;它可以用來指向調用對象。 友元函數是沒有this指針的&#xff0c;因為友元不是類的成員&#xff0c;只有成員函數才有this指針…

靜態成員

我們可以使用static關鍵字把類成員定義為靜態的。當我們聲明類的成員為靜態時&#xff0c;這意味著無論創建多少個類的對象&#xff0c;靜態成員都只有一個副本。 靜態成員在類的所有對象都是貢獻的。如果不存在其他的初始化語句&#xff0c;在創建第一個對象時&#xff0c;所有…

Linux進程通信之mmap

mmap()函數&#xff1a; void *mmap(void* addr,size_t length,int port,int flags,int fd,off_t offset); 返回&#xff1a;成功&#xff1a;返回創建的映射區首地址&#xff1b;失敗&#xff1a;MAP_FAILED 宏 參數&#xff1a; addr: 建立映射區的首地址&#xff0c;由…

Linux之文件通信

/** 后執行,嘗試讀取另外一個進程寫入文件的內容*/ #include <stdio.h> #include <unistd.h> #include <stdlib.h> #include <fcntl.h> #include <string.h>int main(void) {char buf[1024];char *str "----------test2 write secesuss---…

重載函數和重載運算符

C允許在同一個作用域中的某個函數和運算符指定多個定義&#xff0c;分別稱為函數重載和運算符重載。 重載聲明是指一個與之前已經在該作用域內聲明過的函數或方法具有相同名稱的聲明&#xff0c;但他們的參數列表和定義&#xff08;實現&#xff09;不相同。 當調用一個重載函數…

二元運算符重載

以非成員函數方式重載運算符 /*** overtwo.cpp ***/ #include<iostream> using namespace std;class Box {public:Box(double l 2.0,double b 2.0,double h 2.0){length l;breadth b;height h;}double getVolume(){return length*breadth*height;}private:double l…

一元運算符重載

一元運算符只對一個操作數進行操作&#xff0c;下面是一元運算符實例&#xff1a; 遞增運算符&#xff08;&#xff09; 和遞減運算符&#xff08;--&#xff09;一元減運算符&#xff0c;即符號&#xff08;-&#xff09;邏輯非運算符&#xff08;!&#xff09;/*** overone.c…

關系運算符重載

C語言支持各種關系運算符重載(<,>,>,<,)&#xff0c;他們可用于比較C內置的數據類型。 支持重載任意一個關系運算符&#xff0c;重載后的關系運算符可以用于比較類的對象。 /*** overrealate.cpp ***/ #include<iostream> using namespace std;class Distanc…

kill函數

kill函數/命令產生信號 kill命令產生信號&#xff1a;kill -SIGKILL pid kill函數&#xff1a;給指定進程發送指定信號(不一定殺死) int kill(pid_t pid, int sig); 成功&#xff1a;0&#xff1b;失敗&#xff1a;-1 (ID非法&#xff0c;信號非法&#xff0c;普通用戶殺i…

下標運算符重載

重載該運算符用于增強操作C數組的功能。 /*** subscript.cpp ***/ #include<iostream> using namespace std; const int SIZE 10;class safearay {private:int arr[SIZE];public:safearay(){register int i;for(i 0; i < SIZE ;i){arr[i] i;} }int& operator…

賦值運算符重載

重載賦值運算符&#xff08;&#xff09;&#xff0c;用于創建一個對象&#xff0c;比如拷貝構造函數。 /*** evaluate.cpp ***/ #include<iostream> using namespace std;class Distance {private:int feet;int inches;public:Distance(){feet 0;inches 0;}Distance(i…