原创 scanf輸入、printf輸出緩衝區 & gets/fgets

輸入緩衝區:    鍵盤->鍵盤緩衝區->輸入緩衝區->程序    輸入緩衝區清除的條件:只有當其中的內容被讀走的時候纔會清除    /**************************************************/

原创 命名空間

1.內存名字隱藏外層名字2.嵌套名字空間逐層分解3.名字空間別名定義方法:namespace ns = 名字空間;    如:    namespace ns1{        typedef int TYPE;        namesp

原创 一個簡單日曆

基本點:    (1)每個月的日期        const long dayarr[12] = {31,28/29,31,30,31,30,31,31,30,31,30,31};     (2)確定閏年       isleapyear 

原创 你所不知的sizeof

<1>sizeof返回的是無符號數,當和int比較時,會提升爲無符號數。若爲-1,那麼就成爲int的最值<2>int * q;   sizeof * q;sizeof操作符把指針q指向的東西(*q)作爲操作數,它返回q所指向對象的類型的字節

原创 c++異常處理

<1>c++異常匹配規格是根據對象的靜態類型進行匹配的<2>typedef void (*f)() throw(int) typedef 語句中不能有異常規格說明<3>throw;向上級拋異常throw x;拋出異常1.使用異常說明:  

原创 可變參數

#include <stdarg.h>int max(int cnt,...){    //定義可邊長參數列表    va_list v;    //使用v保存參數cnt之後的那些參數    va_start(v,cnt);        

原创 轉義字符

\a:響鈴\b:回退一格\f:換頁 \n:換行,光標到下行行首\r:回車,光標到本行行首 \t:水平製表 \v:垂直製表 \\:反斜槓\':單引號\":雙引號 \?:問號\ddd:三位八進制 \xhh:二位十六進制  \0:空字符(NULL

原创 c語言的跳轉longjmp

#include <csetjmp>#include <cstdlib>static jmp_buf g_env;void Recursion (int nDepth) {if (nDepth >= 3)longjmp (g_env, 1)

原创 一些不知的scanf問題

scanf("格式化字符串",地址列表);    <1>如果scanf產生了錯誤,那麼返回0    注意:    <1>scanf尋找數據起始位置時,跳過空白字符(空格、回車、製表符等),即遇到空白符認爲結束一次輸入操作    <2>sca

原创 %根據被除數符號來確定符號的

例如:printf("%d,%d,%d\n",7%-3,-7%3,-7%-3);    輸出:1,-1,-1

原创 我的友情鏈接

51CTO博客開發

原创 有些宏 不得不知道

1、內存字節分配對齊<1>#define DEFAULTSIZE 8long AlignUp(long lSize){return (lSize + DEFAULTSIZE - 1) & ~(DEFAULTSIZE - 1);}<2>tem