Formsによる出席確認
昨年度から学際科目の担当で、出席とるのが大変。 んで最近は、Microsoft Forms のアンケート機能で出席確認している。ただ、今日は授業開始前にすでに出席の解答があって…サボりなのに回答か!?!?とい […]
仮想関数を用いた課題
第2回レポート課題 純粋仮想基底クラスの資料を参考に、複素数データ(直行座標系でも極座標でもよい)の並び替えを行うプログラムを作成せよ。ただし、(1)複素数専用の並び替え関数を作らないこと。(2)複素数用の比較関数を作る […]
D/A・A/D変換回路と誤差
小型コンピュータを使った制御では、外部回路に指定した電圧を出力(D/A変換)したり、外部の電圧を入力(A/D変換)したりすることが多い。以下にその為の回路と動作について説明する。 D/A変換回路 ラダー抵抗回路によるD/ […]
純粋仮想基底クラス
前回説明した仮想関数では、基底クラスから派生させたクラスを作り、そのデータが混在してもクラスに応じた関数(仮想関数)を呼び出すことができる。 この仮想関数の機能を逆手にとったプログラムの記述方法として、純粋仮想基底クラス […]
mallocを使った課題
授業での malloc , free を使ったプログラミングを踏まえ、以下のレポートを作成せよ。 以下のデータのどれか1つについて、データを入力し、何らかの処理を行うこと。 課題は、原則として、(自分の出席番号%3)+1 […]
malloc()とfree()
malloc()とfree() malloc() は、動的(ヒープ領域)にメモリを確保する命令で、データを保存したい時に malloc() を実行し、不要になった時に free() を実行する。 malloc() では、 […]
派生と継承
前回の派生と継承のイメージを改めて記載する。 // 基底クラス class Person { private: char name[ 20 ] ; int age ; public: Person( const char […]
効率のよいメモリ使用と動的メモリ確保
次にメモリの利用効率の話について解説する。 配列宣言でサイズは定数 C言語では、配列宣言を行う時は、配列サイズに変数を使うことはできない。 最近のC(C99)では、実は下記のようなものは、裏で後述のalloca()を使っ […]
ポインタの加算と配列アドレス
ポインタの加算と配列アドレス ポインタに整数値を加えることは、アクセスする場所が、指定された分だけ後ろにずれることを意味する。 // ポインタ加算の例 int a[ 5 ] = { 11 , 22 , 33 , 44 , […]
C言語の制御構文の基礎(part2)
制御構文とフローチャート 構文の入れ子 文と複文 C言語の文法で、{,} は複数の処理をまとめる複文とよばれる。 これに対して、a = 123 ; といったセミコロンで終わる「処理 ;」は単文という。 制御構文は、「if […]