CPUにおけるCPIとは
auです。
今回はCPIについて調べてみました。
調べるといろいろなCPIと略される言葉があることを知りました。
今回調べるのはそのなかの"Cycles Per Instruction"です。
CPIとは
CPUの処理速度を表す単位です。1命令を処理するのに必要な平均クロック数のことです。
CPI = CPUサイクル数 / 命令数で表すことができます。
CPIは少ないほうがCPUの性能がいいということになります。つまり、CPIを減らすか、命令の数を減らす、または両方をすることで処理速度を向上することができます。
C言語のscanf関数でスペースが入っている文字を出力する
auです。
今回はscanf関数でスペースの入った文字を出力してみます。
普通に書こうとすると以下のようになると思います。
#include <stdio.h> int main(void) { char c[30]; printf("Please write words\n"); scanf("%s", c); printf("c = %s\n", c); printf("Please write words\n"); scanf("%s", c); printf("c = %s\n", c); return 0; } // 実行結果 Please write words I have a pen c = I Please write words c = have
scanfでスペースを含めた文字を出したい場合は以下のようにします。
scanf("%[^\n]%*c", c);
このようにすると"\n(改行)"以外出力されるようになります。
上のコードを書き替えてみます。
#include <stdio.h> int main(void) { char c[30]; printf("Please write words\n"); scanf("%[^\n]%*c", c); printf("c = %s\n", c); printf("Please write words\n"); scanf("%s", c); printf("c = %s\n", c); return 0; } // 実行結果 Please write words I have a pen. c = I have a pen. // scanf("%[^\n]%*c", c); Please write words I have a pen. // scanf("%s", c); c = I
%が一つ赤く表示されますが問題なくコンパイルすることができる。
全ての文が出力されました。
プログラムを書くときに気を付けていること
auです。
明日テストなので最近プログラミングをする際に気を付けていることでも書こうと思います。
1. i + 1など、空白をあけて見やすくする
間違いなども見つかりやすいし、みていて綺麗になる
2. 分からなくなったら誰かに説明をするように勉強する
自分に合っているような勉強法なんでしょうが自分に対して説明するようにすると何か理解できる気がします。
プログラミングをもっとしていくには、まだ勉強しなければならないとすごく感じています。
学校だけではなく、他の場所でも勉強をもっとがんばりたいです。