リュカの日記

2016年11月09日(水)

現在午前0時00分。
日が替わった。

現在午前3時21分。
2冊目の教科書の第6章まで進めた。
第7章が2冊目の最終章で、実力テストの答えが書いてある。
理解出来ていない部分も多いので、答えを見ながらコードを打ち込んでいこう。

ニコニコニュースで知ったのだが、酒鬼薔薇のホームページが閉鎖したそうだ。
このPCになってから、一度もあのホームページチェックしてなかったな。
アドレスも忘れてる。

現在午前6時30分。
C言語の本の2冊目を終えた。
実力テストみたいな部分は殆ど理解出来ず、「お、おう・・・」みたいな感じで書かれているコードを丸写しし、それでエラーが出ない事を確認しただけで終わらせてしまった。
最後の問題が137行にもわたるコードで、かなり疲れた・・・
3冊目、最後の1冊に取り掛かるのは、しばらくしてからにしようと思う。

現在午前7時52分。
スーパーに行ってこようと思う。
何を買ってこようかな。
大根は必須。

現在午前8時31分。
スーパーで色々と菓子パンを買ってきた。

しまった、うどん買ってくるの忘れた。

現在午前9時47分。
しばらく横になっていて意識が少し落ちていた。
疲れが溜まっていたんだろうな。

10進数で入力した数値を2進数に変換するソースを書いた。
一応、本の通りに変換処理は出来たのだが、数値を入力するたびにエラーが出る。
10年位前も「3冊目で頓挫した」という記憶があるので、もしかしたらこの部分で詰んだのかもしれない・・・
----------
#include "stdafx.h"
#include


int main()
{
unsigned char var; //変換する値
unsigned char bit[8]; //ビットデータ
int i; //カウンタ

/* 変換する値 */
printf("値を入力 ");
scanf_s("%d", &var);

/* 2進数に変換 */
for (i = 0; i < 8; i++) {
bit[i] = var % 2;
var = var / 2;
}

/* 画面に出力 */
for (i = 7; i >= 0; i--) {
printf("%d", bit[i]);
}
printf("\n");

return 0;
}
----------
「Run-Time Check Failure #2 - 5」というエラーが出る。

上に書いたエラーでググってみると「プログラムをリビルドすると解決する事がある」という記事が一番上に出てきたので、一度閉じてソースをもう一度張りなおした。
そしたら、「scanf_s("%d", &var)」のところの「%d」の部分を「%hhdに変える事をお勧めします」という警告メッセージが出てきたので、その通りにしてみた。
すると、エラーが出なくなった。
相変わらず10進数を2進数に変換するロジックや2進数を10進数に直す原理はよく解ってないけど、とにかく教科書は進めて行ける事になった。

3冊目に入ってから、一気に読み進めるペースが下がった・・・
どんどん内容が俺の理解の外になっていく。
ツムツムをプレイして気分転換しよう。

現在午後12時19分。
なんか眠くなってきた。
モチベも下がってきた事だし、今日はもう寝る前の薬を飲んでしまおうか。

現在午後17時31分。
目が醒めた。
相変わらずの睡眠不足。
一服したら二度寝に入ろう。

現在午後18時31分。
二度寝出来そうにない・・・
なので、またC言語をやっていく。

10年以上前に購入した本なのに、3冊目だけやたらと中身のページが綺麗なんだよな。
2冊目なんてビリビリに破れている部分もあったのに。
当時、3冊目は殆ど手を付けずに諦めていた、という事だろうか。

現在午後20時14分。
今朝買ってきたUFO焼きそばを食べた。
もう一度二度寝してみようと思う。

2を8乗したら256。
2進数に直すと「100000000」と9桁になる。
ここから1を引くと「11111111」と8桁になり、全ての桁が1になるんだろうな。
2の7乗、2の6乗、2の5乗、2の4乗、2の3乗、2の2乗、2の1乗、1の0乗すると、128足す64足す32足す16足す8足す4足す2足す1で255。
8ビットに収まる数が11111111で255なのも、何となくだけど分かった気がする。

現在午後20時59分。
眠りやすくする為に、とん服の薬リスペリドンを一本飲んだ。


 < 過去  INDEX  未来 >


リュカ

My追加