超初心者のプログラム入門(C/C++)

前田稔(Maeda Minoru)の C/C++ 入門のページです。

本格的にプログラムを勉強するとなると、何と言ってもC言語(C++)でしょう。
Windows Store Aplication のプログラムも掲載しています。

前田稔の超初心者のプログラム入門

C/C++ index

Programming Guide

C/C++/CLI 紹介

  1. C++/CLI(CLR)とは
    C++/CLI(Common Language Infrastructure) とは何かの説明です。
  2. テストプログラム
    command line から Program を作成する環境を設定して、テストプログラムを実行します。
  3. Console Mode のプログラムを動かす
    command line の環境で、何本かの console mode のプログラムを動かしてみましょう。
    ☆manifest で不可解な現象(MSVCR80.dll)が起こっています。
  4. 3種類の Hello World
    C標準ライブラリ, Win32 API, .NET Frameworkクラス・ライブラリで Hello World を表示します。
  5. Maneged と UnManeged の使い分
    マネージ・コードとネイティブ・コードを1つのソース・コード上に混在させます。
  6. Windows Program を作成する
    command line の環境で、通常の Windows Program を作成します。
  7. Visual Studio で C++/CLI のプロジェクトを作成
    Visual Studio の環境で C++/CLI のプロジェクトを作成する方法を説明します。

UnManeged Mode

C言語(UnManeged Mode)の基本
    Program Select
    昔懐かしい汎用コンピュータ&MS-DOS時代の面白そうなプログラムを拾い出してみました。
    ☆興味のあるページだけご覧ください。

  1. 平方根の計算
    平方根の計算には「ニュートン・ラプソン」の方法と言う有名な解法があります。
  2. 正多角形で円周率を計算
    C++ で円に内接する正多角形を用いて円周率を計算します。
  3. 奇数の魔方陣を作成する
    二次元配列を使って奇数の魔方陣を作成します。
  4. 配列とポインタ
    奇数の魔方陣を例にして、配列とポインタの扱い方を説明します。
  5. TEXT の暗号化
    Text File を暗号化するプログラムと、復号化するプログラムです。
    乱数を使った簡易暗号化です。あなたも解読に挑戦してみて下さい。 (^_^;)
  6. 4000桁の円周率を求める
    C++ のコンソールアプリケーションで円周率を約4000桁まで求めます。
    ☆円周率にまつわる豆知識も紹介します。
  7. *で囲まれた中を塗りつぶす
    *で囲まれた中を塗りつぶす基本的な C++ の「再起関数」のプログラムです。
    ☆再起関数の基本的な考え方を説明します。
  8. 迷路探索のプログラム
    *で囲まれた迷路を探索してゴールに到達する C++ の「再起関数」のプログラムです。
  9. 順列組み合わせを表示
    順列組み合わせを再起関数で求めて表示します。
  10. ソートの方法8通り
    一般的に使われている8通りの方法でソートしてみました。
  11. 再起関数を使ってソート
    ループは全て再起になります。
    隣接交換法を再起を使ってプログラミングしてみました。
  12. Binary Tree ソート
    Binary Tree で昇順にソートして印字します。
  13. 逆ポーランド記法
    逆ポーランド記法は優先順位を考慮した数式の計算を行うのに適した方法です。
  14. グラフィックモードでラインを描く
    昔懐かしいグラフィックモードでラインを描きます。
  15. 日本の国旗を描く
    昔懐かしいグラフィックモードで日本の国旗を描きます。
  16. 画像を描画
    昔懐かしいグラフィックモードで画像を描画します。
  17. パレットを設定して画像を描画
    パレットを設定して、綺麗な色で画像を描画します。

    構造体
    ☆構造体はクラスで代替できるので適当に読み流して下さい。

  18. 構造体の基本
    昔のC言語(*.c) のプログラムで、構造体の基本を説明します。
  19. 構造体の基本-2
    「構造体の基本」の続きです。
  20. 構造体 & 共用体
    構造体と共用体のコラボレーションです。
  21. new で構造体を割り当てる
    new でメモリ上に構造体の領域を割り当てます。
  22. scanf で構造体にデータを入力
    scanf で構造体のメンバー変数にデータを入力します。
  23. 構造体の配列
    構造体の配列を定義して、初期値を設定します。
  24. 構造体の配列を渡す
    構造体の配列をパラメータとして、関数に渡します。
  25. 構造体のポインタ配列
    構造体のポインタ配列を定義して、ファイルからデータを入力して格納します。
  26. 構造体で private を使う
    構造体で private 領域とメンバ関数を使います。
    ここまで来ると Object Class と呼ぶ方が相応しいかも知れません。
  27. List 連鎖の基礎
    構造体を連鎖して List 構造を構築します。
  28. List 連鎖/印字/解放
    構造体を typedef で定義して、連鎖/印字/解放する関数を紹介します。
  29. Binary Tree Sort new
    Binary Tree Sort で new を使ってセルを割り当てます。
    セルを再起的に解放する関数や検索する関数も紹介します。

    Object Class
    ☆Object Class の基本だけは理解して下さい。

  30. UnManeged Mode の簡単な Object Class
    UnManeged Mode の簡単な Object Class を定義します。
  31. Text Class を作成-1
    Console Mode で TEXT FILE を扱う Text Class を作成します。
  32. Text Class を作成-2
    Text Object Class に数値を切り出すメンバー関数を追加します。
  33. new で Class を生成する
    new で Class を生成(インスタンス化)する方法と、直接 Class を定義する方法の考察です。
    Constructor でデータを渡して、GCM を計算します。
  34. Class を生成(インスタンス化)する
    Class を生成(インスタンス化)する方法の考察です。
    Constructor と Destructor が実行されるタイミングを調べます。
  35. Girl Class で配列を使う
    Girl(ガール) Object Class のポインタ配列を使います。

    Object Class 演習

  36. 演算子のオーバーロード
    演算子のオーバーロードを使って Vector2 Class を定義します。
  37. メンバオブジェクトを定義する
    C++ の LCM Class で、メンバオブジェクト(GCM)を定義します。
  38. Object Class を継承する
    C++ で GCM Class を継承して LCM Class を定義します。
  39. Copy Constructor
    Class の実体をコピーした時に呼ばれる Copy Constructor の説明です。
  40. Class で静的変数を使う
    Object Class 内で静的変数を使います。
  41. Constant 指定
    Constant 変数, Constant 関数を使います。
  42. 純粋仮想関数と抽象クラス
    C++ で純粋仮想関数を持っている抽象クラスを使います。
  43. 抽象クラスでジャンケンの判定
    C++ で抽象クラスを使った、ジャンケンの勝ち負けを調べるクラスです。
  44. Friend 関数を使う
    C++ で Friend 関数で private 領域にアクセスします。
  45. Template Object Class
    C++ で template(テンプレート)機能を使って Object Class を定義します。

    ワイドキャラクタ(unicode)

  46. wprintf() で Unicode を使う
    wprintf() でワイドキャラクタ(unicode)を使って編集して表示します。
  47. Unicode で全角文字を使用
    ワイドキャラクタ(unicode)で全角文字を使用します。
  48. 文字領域をダンプする
    マルチバイトとワイドキャラクタで定義した領域を16進ダンプします。
  49. Unicode で保存したファイルを入力
    Unicode のベタで保存したファイルを入力して表示します。
  50. text mode でファイルを入力
    fgetws() を使って text mode でファイルを入力します。
  51. マルチバイト⇔ワイドキャラクタ
    マルチバイト⇔ワイドキャラクタの相互変換です。
  52. CString Class を使う
    MFC で使われてる CStringT Class を使います。
  53. CString でコード変換
    CString Class でマルチバイトからワイドキャラクタに変換します。
  54. 全角/半角の文字列長
    CStringT で全角/半角の文字列長を表示します。

    Task の基本

  55. Task のプログラミング
    Task を使うと CPU が平行して動きます。
  56. Task の関数値
    関数値をリターンする Task です。
  57. パラメータを渡す
    Task にパラメータを渡します。

    Program Note
    ☆古くから使われているC言語のプログラムノートです。

  58. _getch() で表示を確認する
    _getch() でコンソ-ルの表示を確認します。
  59. scanf_s() で文字列を入力
    scanf_s() で文字列を入力します。
  60. strxxx 関係のセキュリティ強化
    strxxx 関係のセキュリティが強化された関数の説明です。
  61. 文字列の検索
    char 配列を使った文字列の検索と置換です。
  62. sizeof でサイズを調べる
    C++ で sizeof を使って変数のサイズを調べます。
  63. malloc で領域を確保
    昔ながらの malloc で領域を確保して free で開放します。
  64. Command Line の取り込み
    Command Line から渡されたパラメータを取得します。
  65. 列挙型 enum 宣言
    列挙型 enum(イニューム)宣言を使って構造体のアイテムを表示します。
  66. 関数のオーバーロード
    C++ で同名の関数を複数定義(オーバーロード)します。
  67. パラメータに既定値を設定
    C++ で関数のパラメータが省略されたときの既定値を設定します。
  68. 関数名をパラメータで渡す
    関数のパラメータとして関数名を渡して、渡された関数を実行します。
  69. TEXT FILE を表示する
    Console Mode で TEXT FILE を表示します。
  70. fprintf() でファイルに出力
    fprintf() を使って TEXT 形式のファイルを作成します。
  71. fscanf_s() でファイルから入力
    fscanf_s() を使って TEXT 形式のファイルから入力します。
  72. レコードの入出力
    レコード(構造体)を binary 形式でファイルに出力します。
    binary 形式で出力されたレコードを入力して表示します。
  73. Binary File の修正
    binary 形式のファイルを修正します。
  74. ファイル分割
    メインプログラムと関数を記述したファイルを分けて作成します。
  75. カーソル位置の設定
    コンソールモードでカーソルの位置を設定します。
  76. コンソールアプリで文字色を変える
    コンソールモードで TEXT の文字の色を変えて表示します。
  77. system でプログラムを起動する
    system() 関数を使ってプログラムから別のプログラムを起動します。
  78. 環境変数の取得/設定
    プログラムで環境変数を取得する方法と設定する方法です。

C++言語
    C++ ガイド
  1. イントロダクション
    C++のイントロダクションです。
  2. iostream で表示
    C++ の iostream を使って TEXT を表示します。
  3. iostream でデータをタイプ入力
    C++ の iostream を使ってコンソールからデータをタイプ入力します。
  4. 入力ストリームの終了
    入力ストリームの終了は Ctrl+Z をタイプします。
  5. 出力編集のサイズを指定
    width で出力編集のサイズ(幅)を設定して印字します。
  6. 出力バッファのフラッシュ
    出力バッファをフラッシュします。
  7. 処理子(manipulator)
    出力編集に処理子(manipulator) を使います。
  8. 数値⇔文字変換
    sstream を使うと数値⇔文字変換が簡単です。

    new 演算子

  9. new でメモリ領域の割り当て
    new を使えば、簡単にメモリ領域を割り当てることができます。
  10. ファイルからデータを入力
    TEXT ファイルからデータを入力します。
  11. コマンドラインからファイルを指定
    コマンドラインから指定された TEXT FILE を入力して、コンソールに表示します。
  12. ファイルのコピー
    TEXT ファイルをコピーして、新しいファイルを作成します。
  13. Global & Local Area
    Global Area & Local Area と for文の変数宣言です。

    scope 演算子

  14. scope 演算子
    Global & Local と Object Class の scope 演算子です。
  15. namespace 宣言
    namespace 宣言の説明です。
  16. 引数を reference で受け取る
    関数で渡された引数を reference で受け取ります。
  17. 変数を reference で返す
    関数で static 変数に値を格納して reference で返します。
  18. inline 関数
    inline(インライン)関数を使うと、その位置で関数のコードが展開されます。

    template 関数

  19. template 関数入門
    引数の型が違うだけなら template(テンプレート)関数がお勧めです。
  20. template 関数で値の入れ替え
    template 関数で、受け取ったパラメータの値を入れ替えます。
  21. template で Class を渡す
    template で Class を渡します。
  22. template で受け取った Class を識別
    template で受け取った Class を識別して処理の内容を変えます。
  23. template 関数で氏名を検索
    template 関数に氏名構造体と成績構造体を渡して、成績表を表示します。

STL(Standard Template Library)

    STL program guide

  1. STL(Standard Template Library)
    STL の説明と主な機能の抜粋です。
  2. 2倍すると最後尾の数字が先頭に
    ある長い数列があり、2倍すると最後尾の数字(8)が先頭に移動します。元の数列を求めて下さい。
    STL(Standard Template Library) の vector コンテナを使います。
  3. STL でシャッフルする
    カードゲームなどで、シャッフルする部分を STL を使ってプログラムしてみます。
  4. set でベスト5を調べる
    set コンテナを使って、ベスト5を調べる部分だけをプログラムしてみます。
  5. STL の List を使って構造体を連鎖する
    STL の List コンテナを使って構造体を連鎖し、挿入と削除を行います。
  6. list を使って弾丸の動きを管理する
    STL の list コンテナを使ってシューティングゲームの弾丸の動きを一元的に管理します。
  7. List コンテナをソートする関数
    STL の List コンテナに格納した構造体をソートする関数を作成します。
  8. シーケンスを保って構造体リストに挿入する
    STL の list コンテナにシーケンスを保って構造体を追加/挿入します。

    string の基礎

  9. STL の string を使う
    STL string(wstring) の使い方です。
  10. 文字列の入力
    int 型と string 型を交互に入力します。
  11. 文字列を改行コードで切り出す
    長い文字列を改行コードで切り出して string に格納します。
  12. STL で stdio.h を使う
    string を stdio.h の printf() 関数で印字します。
  13. STL で文字列の検索
    STL の string を使った文字列の検索と置換です。
  14. HANDLE を使った string 入出力
    Windows 標準のファイルHANDLEを使った string データの入出力です。
  15. 大文字/小文字を区別しないで比較
    string を英大文字/英小文字を区別しないで比較します。
  16. string に vector を使う
    vector を使って string を配列で定義します。
  17. Vector 同士の比較
    lexicographical_compare() で Vector 同士の大小関係を調べます。
  18. string Stream で文字列に変換
    sprintf() と同様にデータを文字列に変換します。
  19. string Stream でデータを切り分ける
    sscanf() と同様に文字列からデータを切り分けます。

    algorithm

  20. container のデータを印字
    container(コンテナ)に格納されている全てのデータを印字します。
    void 型の関数に container を渡して、添え字で参照します。
  21. container のデータを印字-2
    container(コンテナ)に格納されている全てのデータを begin()~end() で参照します。
  22. iterator を渡す
    iterator(イテレータ)を渡して、container のデータを印字します。
  23. x と等しくない要素を印字
    void 型の関数に container と x を渡して、x と等しくない要素を印字します。
  24. iterator を返す
    container と x を渡して、x と等しくない cell の iterator を返します。
  25. begin()~end() で検索して iterator を返す
    begin() と end() と x を渡して、x と等しくない cell の iterator を返します。

    Vector Container の考察

  26. Vector コンテナ入門
    Vector コンテナの元となる Object Class をコーディングします。
  27. push_back() で登録
    Vector コンテナに push_back() でセル(データ)を登録します。
  28. Vector Class の Copy Constructor
    Vector Class のコピーとコピーコンストラクタです。
  29. iterator の説明
    データの印字に iterator を使ってループします。
  30. コンストラクタでデータを格納
    配列に設定した値をコンストラクタで Vector に格納します。
  31. erase() 関数を定義
    iterator で指定したセル(データ)を削除する関数を定義します。
  32. insert() 関数を定義
    cell(データ)を挿入する insert() 関数を定義します。

Maneged Mode

Maneged Mode はC#と同じようにプログラミング出来ます。
Console Program

    Console Program 入門

  1. 空のプロジェクトから作成
    空のプロジェクトから作成した Hello World のプログラムです。
  2. バッチファイルでコンパイル
    バッチファイルを使ってコンパイルします。
  3. 変数の値を表示する
    変数に格納されている数値と文字を WriteLine で編集して表示します。
  4. 日付と時刻を表示する
    C++ で、本日の日付と現在の時刻を表示します。
  5. 三個のソート
    C++ で、三個の変数を昇順(小さい順)に並べ換えます。
  6. 1~100までの合計
    C++ で、1~100までの合計を計算して表示します。
  7. コンソール入力
    コンソールから入力するプログラムを using を使わずに作成します。
  8. 算術データの最小値/最大値と編集
    C++ で、算術データの「最小値/最大値」を編集して表示します。
    サイン無しデータはキャストして参照するようです。
  9. データの編集と表示
    C言語の printf() と同様に、データを編集して表示します。
  10. 乱数の発生
    C++ の gcnew Random() で「0~99」の乱数を発生させます。

    配列

  11. 配列を定義する
    C++ で、1次元配列,2次元配列,3次元配列を定義します。
  12. 配列に初期値を設定する
    1次元配列,2次元配列,3次元配列に初期値を設定します。
  13. String Array
    String 配列の定義と初期値の設定です。
  14. ArrayList を使う
    C++ で配列の代えて ArrayList を使います。

    Maneged String

  15. Maneged Mode のストリング
    Maneged Mode でストリングを使います。
  16. Substring & Indexd
    Substring と Index 参照です。
  17. String⇒int
    タイプ入力した数値を int に変換します。
  18. Debug 関数を定義
    Debug 関数を定義します。
  19. String を切り分ける
    String を切り分けて int に変換します。
  20. 文字列のポインタを取得
    String から文字列のポインタを取得して OutputDebugString を使います。
  21. 文字列⇔String 相互変換
    文字列⇔String の相互変換です。

    メソッド(method)

  22. メソッド(method) の定義
    メソッド(GCM 関数) を定義して呼び出します。
  23. 配列を渡してソートする
    メソッドに配列を渡してソートします。

    ファイル入出力

  24. Text File の入力
    C++ で ReadLine を使って Text File を入力します。
  25. Text File の出力
    C++ で Text Data をファイルに出力します。

    Maneged Object Class

  26. Object Class(ref class)
    Maneged Mode で一般的に使われる ref class の紹介です。
    ☆Main() と gcmlcm Class のファイルを分ける方法も説明します。
  27. Sample Class
    配列をパラメータとする Object Class のサンプルです。
    ☆C# との違いを学んで下さい。
  28. ref class と value class
    Normal class と ref class と value class の説明です。
  29. ref class をパラメータで渡す
    Maneged Mode で ref class をパラメータで渡します。
  30. value class のプログラム
    C++ で作成した value class のサンプルプログラムです。
    value class はコピーが渡されることを除けば ref class と同じようにプログラム出来ます。
  31. class を継承します
    GCM class を継承して LCM class を作成します。
  32. 誕生日の曜日
    誕生日の曜日と生まれてからの日数を計算します。
    年/月/日をタイプ入力して int に変換して計算します。

    XML(ExtensibleMarkupLanguage)

  33. XML Save&Load
    XML ファイルの作成と入力の基礎です。
  34. 成績データ XML
    成績データ XML(簡易データベース)の作成と利用方法です。

    Delegate

  35. Delegate の基礎
    C++ の デリゲート(委譲)の基礎です。
  36. デリゲート
    デリゲート(委譲)に Class のメソッドを登録します。
  37. 複数のメソッドを委譲
    複数のメソッドをデリゲート(委譲)します。

    DLL(Dynamic Link Library)
    ☆C#⇒C++ DLL の記述があるページは、C# から DLL を呼び出すページにリンクしています。

  38. DLL(Dynamic Link Library)
    DLL(Dynamic Link Library) に関して考察します。
  39. DLL Hello class
    "C++ Hello DLL" を表示する DLL を作成します。
    ☆C#⇒C++ DLL(クラス登録)
  40. DLL GcmLcm class
    GCM(最大公約数), LCM(最小公倍数)を計算する DLL を作成します。
    ☆C#⇒C++ DLL(クラス登録)
  41. DLL String class
    String Class の引数を受けて表示する DLL を作成します。
    ☆C#⇒C++ DLL(クラス登録)
  42. C++⇒C#/Hello.dll
    C# で作成した Hello.dll を C++ から呼び出します。
  43. C++⇒C#/GcmLcm.dll
    C# で作成した GcmLcm.dll を C++ から呼び出します。
  44. DLL Normal Hello
    CLI Normal Mode で "Hello DLL" を表示する関数を DLL に登録します。
    ☆C#⇒C++ DLL(関数登録)
  45. DLL Normal GCM,LCM
    CLI Normal Mode で GCM, LCM を計算する関数を DLL に登録します。
    ☆C#⇒C++ DLL(関数登録)
  46. DLL Normal Class
    CLI Normal Mode で Class を DLL に登録します。
  47. DLL Normal wchar_t*
    CLI Normal Mode で wchar_t* を受ける関数を DLL に登録します。
    ☆C#⇒C++ DLL(関数登録)
  48. Win32 DLL Hello
    Win32 で "Hello DLL" を表示する DLL を作成します。
  49. Win32 DLL Gcm,Lcm
    Win32 で GCM, LCM を計算する DLL を作成します。
  50. Win32 DLL Hello Class
    Win32 で Hello Class を登録した DLL を作成します。
  51. Win32 DLL Class
    Win32 で Gcm, Lcm Class を登録した DLL を作成します。
  52. CLI⇒Win32_Hello
    Win32 で作成した Hello.dll を C++ から呼び出します。
  53. CLI⇒Win32_Class
    Win32 で作成した GcmLcm.dll(Class 登録)を C++ から呼び出します。
  54. DLL から LIB を作成
    ネイティブモードの DLL から LIB を作成します。
  55. DLL GetProc
    GetProcAddress() で DLL のエントリーアドレスを取得します。
  56. C#⇒Win32DLL
    Win32 で作成した DLL を C# から呼び出します。
    ☆C#⇒Win32→C++ DLL
  57. C#⇒Win32DLLCls
    Win32 で作成した DLL Class を C# から呼び出します。
    ☆C#⇒Win32→C++ DLL
  58. Cmdline Hello
    コマンドプロンプトを起動して Commandline から Hello.dll を作成します。
  59. Cmd W32 Hello
    Commandline から Win32 の Hello DLL を作成します。

Windows Program

    Windows Program 入門

  1. ウインドウを表示する
    Form を生成するプログラムを CLI.BAT で Command Line から実行します。
  2. MessageBox を表示する
    MessageBox の表示とウインドウにキャプションを設定します。
  3. Visual Studio のプロジェクトでラインを描画
    Visual Studio の環境で C++ のプロジェクトを作成して、ラインを描画します。
  4. ToolBox から TextBox と Button を貼り付ける
    C++ でボタンがクリックされた回数をテキストボックスに表示します。

    Windows Program 演習

  5. 空のプロジェクトからプログラムを作成する
    Main.vcproj とプログラムファイルで構成するシンプルなプロジェクトを作成します。
  6. Mouse Count
    Mouse Down をカウントしてタイトルバーに表示します。
  7. Image 画像を描画する
    C++ で画像ファイルを入力して描画します。
  8. コマンドラインの環境で Button を貼り付ける
    Button を貼り付けるプログラムをコマンドラインの環境で作成します。
  9. PictureBox を貼り付ける
    PictureBox を貼り付けて画像を描画します。
  10. キー操作で画像を移動する
    矢印キーで上下左右に画像を移動します。
    画像を描画する IMAGE Class を使ってみました。
  11. OnPaint を override する
    OnPaint を override してラインを描画します。
  12. HDC を取得して図形を描画する
    HWND や HDC を取得して図形を描画します。
  13. OnPaint を override して画像を描画する
    OnPaint を override して Win32 API を使って画像を描画します。

DirectX Program

    DirectX Guide

  1. Windows Guide
    DirectX とコンパイル環境の設定です。
  2. Command Line から DirectX を動かす
    Command Line から DirectX の Program を作成する環境を設定します。
  3. DirectX のプロジェクトを構築する
    Visual Studio を使って DirectX のプロジェクトを構築します。
    DirectX.dll や LoaderLock のエラーに対処する方法も説明します。
  4. DirectX 3D Graphics(Win32 API) を作成する
    C++ で、DirectX 3D Graphics(Win32 API) を作成します。

    Direct Draw

  5. Direct Draw で Form を表示する
    C++ で Direct Draw を使って Form を生成して表示します。
  6. Direct Draw で Image を表示する
    Direct Draw で Form を生成して Image を表示します。

    Direct 3D

  7. Direct 3D で Form を表示する
    Direct 3D で Form を生成して表示します。
  8. Direct 3D で Torus を描画する
    Direct 3D で Torus を回転しながら描画します。
  9. コーンのメッシュを描画する
    コーンに色を設定した3Dモデル(Cone.x)を描画します。

Network Program
  1. Web ページをダウンロード
    URL に接続して Web ページを TEXT 形式でダウンロードします。
  2. Web ページを TEXT 形式で表示
    URL に接続して Web ページを TEXT 形式で表示します。
  3. Server と Client で通信
    TCP(Transmission Control Protocol) Server に Client から接続します。

.NET Program Note
  1. MessageBox を表示する
    Console Mode で「MessageBox を使って終了確認」を行います。
  2. Draw で書いたイメージをファイルに出力
    BMP 画像領域にカラーで文字を書き、gif 形式でファイルに書き出します。

C++ Windows8(Store App)

    Windows8 C++(ストア アプリ)紹介

  1. Windows8 Blank App
    Windows8 C++ の Blank App(XAML) です。
    ボタンのクリックで現在時刻を表示します。
  2. Windows8 Grid
    Windows8 C++ の Grid App(XAML) です。
  3. Windows8 Split
    Windows8 C++ の Split App(XAML) です。

    Windows8 ToolBox

  4. Windows8 Text Box
    Toolbox から TextBox を貼り付けます。
  5. Image コントロール
    Toolbox から Image コントロールを貼り付けます。
  6. ListBox, ListView

    Windows8 File 操作

  7. install Folder Read
    install Folder に格納されているファイルの入力です。
  8. Local Folder
    Local Folder の入出力です。
  9. Document Folder
    マイドキュメントフォルダの入出力です。
  10. Image Picker
    Picker を使って画像を選択します。
  11. TEXT Picker
    Picker を使って TEXT FILE を入力します。
  12. Folder Picker
    Picker を使って Folder を選択します。

    Windows8 String 操作

  13. Windows8 String
    Windwos8 で String を使います。
  14. Windows8 STL string
    Windows8 で STL string を使います。
  15. Win8 BasicRead
    Windows8 で TEXT FILE を入力します。
  16. Win8 string input
    データを入力して STL の string に格納します。
  17. Win8 Vector
    文字列を行で切り分けて STL の vector に格納します。

    Windows8 Class

  18. Windows8 Class
    Windows8 で Object Class を使います。
  19. Week Class
    Week Class を使って、誕生日の曜日を求めます。

    Windows8 Navigate

  20. Page Navigate
    Button のクリックで、次の Page に Navigate(遷移)します。
  21. URL Navigate
    Button のクリックで、URL(一般のホームページ)に Navigate(遷移)します。

C++ Windows8.1(Store App)
  1. Windows 8.1 Image
    Windows 8.1 で Image コントロールに画像を表示します。
  2. Windows 8.1 Class
    Windows 8.1 で DirectX に準じた Class を作成します。
  3. STL wstring
    Windows8.1 で STL wstring を使います。

C++ Windows10(Store App)
  1. C++ Windows7 以前
    C++ Windows10 で Windows7 以前のプロジェクトを動かします。
  2. Win8 ⇒ Win10
    C++ Windows8(8.1) ストアアプリのプロジェクトをコンバートします。
  3. C++ Windows10
    C++ Windows10 のテンプレートプロジェクトです。
  4. W10 現在時刻
    MessageDialog に現在時刻を表示します。
  5. W10 Image
    ボタンのクリックで画像を切り替えます。
  6. W10 Class
    Windows10 で Object Class を使います。
  7. Win10 Mouse
    Windows10 でマウスのクリックを検出します。
  8. Win10 Task
    Windows10 で Task を使います。

前田稔(Maeda Minoru)の超初心者のプログラム入門

超初心者のプログラム入門(C/C++)