[WinAPI] [C] 1 - Console下輸出入使用

今日頭次練習,來簡易的吧!...太難的俺也不行呀...
使用stdio.h中的幾個函式,來做一般輸出入測試:

int sprintf ( char * str, const char * format, ... );
int swprintf (wchar_t* ws, size_t len, const wchar_t* format, ...);
//將後頭格式的字串寫入到str
http://www.cplusplus.com/reference/cstdio/sprintf/
http://www.cplusplus.com/reference/cwchar/swprintf

int printf ( const char * format, ... );
int wprintf (const wchar_t* format, ...);
//輸出指定格式的字串
http://www.cplusplus.com/reference/cstdio/printf/
http://www.cplusplus.com/reference/cwchar/wprintf/

int scanf ( const char * format, ... );
int wscanf (const wchar_t* format, ...);
//取得輸入的整數、字元或字串等等
//依照format處設定,才可知道要取得的資訊是什麼
http://www.cplusplus.com/reference/cstdio/scanf/
http://www.cplusplus.com/reference/cwchar/wscanf/?kw=wscanf

int sscanf ( const char * s, const char * format, ...);
int swscanf (const wchar_t* ws, const wchar_t* format, ...);
//scanf不同,他scan的資訊是由已經有值的s變數中取得。
http://www.cplusplus.com/reference/cstdio/sscanf/
http://www.cplusplus.com/reference/cwchar/swscanf/?kw=swscanf

////////////////////////////////////////////////

#include "stdafx.h"
#include <stdio.h>  //加入函式標頭

int _tmain(int argc, _TCHAR* argv[])
{
  char buffer [50]={0};
  int n=0, a=0, b=0;

  printf ("Enter two number:\n");
  //http://www.cplusplus.com/reference/cstdio/scanf/
  //可取得鍵入的值(使用%d代表要輸入整數,否則讀不出)
  scanf("%d%d", &a, &b);

  //http://www.cplusplus.com/reference/cstdio/sprintf/
  //sprintf 會將後頭的字串置入buffer,成功時,會回傳buffer長度。
  //定義的buffer大小,必須要大於後頭字串長度才行。
  n=sprintf(buffer, "%d + %d = %d", a, b, a+b);

  //printf可將字串印至console畫面上。
  //%d : 整數; %s : 字串; %0.2f : 浮點數(小數點後都只顯示兩位數) 等等...
  printf ("%s is a string. (%d chars long)\n", buffer, n);

  return 0; //跳出


}

////////////////////////////////////////////////
Note:一個程序中,建議使用寬字元的函式較佳。否則之後的更新,會比較傷腦筋。
(http://blog.csdn.net/superarhow/article/details/1686053)

參考資料:



這個網誌中的熱門文章

[Tips] 設定桌面文字顏色

登入失敗: 使用者帳戶限制。可能原因為不允許空的密碼,登入時數限制,或強制的原則限制

[Win7] 電腦管理-損毀傾印