C 快讀快寫 適用於整數變數 模版 詳細注釋版

2021-10-21 02:21:38 字數 1412 閱讀 6370

前言

快讀快寫就是通過一小部分的手動實現(當然要調一些函式),達到快速輸入/輸出的效果.

快讀

思路

通過從頭到尾讀取字元,記錄是否有負號,其餘部分用累加器累加(注意不同數字的處理).

**

template

<

typename

t>

inline

void

read

(t &x)

if(ch ==

'-')

while

(ch >=

'0'&& ch <=

'9')

x = a * b;

// 不要忘記為原來的變數賦值

}

快寫

思路

首先判斷負號,有的話直接輸出.然後輸出每一位(當大於9時,輸出x / 10,然後 x /= 10),呼叫putchar函式,第二個引數c表示後跟的字元,初始值為』\0』(如果不帶這個引數的話就不輸出).

**

template

<

typename

t>

inline

void

write

(t x,

char c =

'\0')if

(x >9)

putchar

(x %10+

'0')

;// 此時x < 10,由於最好不要改變x的值,所以用x % 10

if(c !=

'\0'

)}

template

<

typename

t>

inline

void

read

(t &x)

if(ch ==

'-')

while

(ch >=

'0'&& ch <=

'9')

x = a * b;

}template

<

typename

t>

inline

void

write

(t x,

char c =

'\0')if

(x >9)

putchar

(x %10+

'0');if

(c !=

'\0'

)}

goodbye,希望大家有收穫吖~

C 快讀快寫詳解

define usefasterread 1 define rg register define inl inline define debug printf qwq n define debugd x printf var s is lld x,ll x define debugf x print...

C 快讀快寫模板

感謝 eason ac 的指點,快讀 快寫將可以支援任意整型變數的輸入與輸出。由於快讀和快寫需要用到標頭檔案中的getchar 和putchar 函式,所以在 的開頭 入如下 include函式支援變數型別多樣,請在呼叫read 函式時在read與 之間加入 您要讀入的變數型別 例 int a re...

八皇后c語言解析(適用於新手

問題描述 西洋棋棋手馬克斯於1848年提出 在8 8的西洋棋放八個皇后,使其不能相互攻擊,即任意兩個皇后不能處於同一行,同一列,或者同一斜線上。不知道為啥的朋友可以去了解以下西洋棋的基本規則 高斯認為有76種解法,計算機出來後解出92種解法。終於在數學上可以超過一下天才兒童高斯了o o 主要演算法 ...