友達と仲良くプログラミングを学ぼう企画 その2
今回はプログラミング言語とはなにかや、プログラミングの流れを確認した上で実際にC言語を用いたプログラミングをした。挙動のないプログラムをまず作成した後に、”Hello World!”を画面に表示させた。
CC BY 4.0 -「C言語に触れてみる」 by OldBigBuddha 2019.
C言語に触れてみるLesson 2
View Slide
前回忘れてた OS から
- Windows とか MacOS とか iOS とか Android とか- 五大装置それぞれをいい感じに動かしてくれる- 機械の方言を吸収してくれる- 開発者に便利な命令群を提供してくれる- 利用者に色々便利機能を提供する(保護者向けの制限とか)Operating System(通称: OS)
「プログラミング言語」ってなんぞ?
「プログラム」は一連の命令群Lesson 1より
「プログラミング言語」は命令を書くための言語
プログラミングの流れ
1: コンピュータにやらせたいことを考える
2: やらせたいことをプログラミング言語が持つ命令単位で細分化する
3: ソースコードを書く
4: 動かす
5: 動けば完成エラーが出たら書き直す以下、無限ループ
C言語
- 1970年代にアメリカで生まれた(古め)- 最近の有名言語はある程度文法が似ている- 最近の言語と比べると良くも悪くも素直- プログラマが書かなくてはいけない処理が多い- まともに使いこなすにはハード面の知識も必要C言語
では、コーディング
Paiza.IO を開く - https://paiza.io/ja/クリック
C言語にして、全部削除「C」を選択全部消す
何もない状態はエラーが出るエラーやと怒られる雑訳: `main` が見当たらへんぞ
とりあえず動く最低限のコード
何もない!(エラーがない)Success と出れば OK
文字を表示させる
“Hello World!”と表示させてみる
できた!
何が起こった?差分はここ差分: 前と比べたときの違い
puts(“Hello World!”);
ぷっとえすint puts( const char *str );ヌル終端文字列 str のすべての文字と追加の改行文字 '\n' 1個を、出力ストリーム stdout に書き込みます。str の終端のヌル文字は書き込まれません。From puts - cppreference.com - https://ja.cppreference.com/w/c/io/puts
What's?
ザクっと言い換え(語弊あり)puts(”ここだお”);""に囲まれた文字を画面に表示する!
一行追加する の部分には自分の名前を入れよう!
一行追加する追加はここ の部分には自分の名前を入れよう!
ところで…
改行文字二行ある
ぷっとえすint puts( const char *str );ヌル終端文字列 str のすべての文字と追加の改行文字 '\n' 1個を、出力ストリームstdout に書き込みます。str の終端のヌル文字は書き込まれません。From puts - cppreference.com - https://ja.cppreference.com/w/c/io/puts
いや、当たり前ですやん二行書いてるもん
実験puts を printf に変更
改行されてへん!?
さらに…\n(¥n) を追加
ちゃんと改行されてる!
“追加の改行文字 '\n'”完 全 理 解(他の文の意味はのちのち)
#include
消してみる消した→
大人の事情で動く
手元(GCC 7.3.0)で試すと怒られる雑訳: `puts` 使いたいのはわかるけど、 宣言があらへんからよろしくないぞ。”warning: implicit declaration of function ‘puts’”
結局何?
Computer の特徴- 電気がないと動かない- 全ては 0 と 1(デジタル)- Computer が理解できる命令は少ない- 曖昧さの余地がないLesson 1より
コンピュータ自身は“""に囲まれた文字を画面に表示する”命令なんて知らない
#include の役割プログラマがよく使うであろう機能をええ感じにまとめたやつ(語弊あり)→ stdio.hそいつを取り込む(includeする)よというのを伝える→ #include <>※すでに準備されてるのは<>で、誰かが別途誰か用に作ったやつは""で括る
すたんだーど いんぷっと あんど あうとぷっとstdio は Standard Input and Output の略日本語に訳すと「標準入出力」標準入力・標準出力設定無しで使えるデータの入り口 or 出口設定無しはちょっと語弊があって、ソフトウェア利用者が準備しなくてはいけないゲームするのにゲーム機本体とコントローラーとモニタを準備しなくてはいけない感じソフトウェアの世界で言う入出力は、モニタやマウスのような物理的なものじゃなくて、ファイルとかも指す、てかそっちがメイン
おさらい
- OS ありがたい- C言語は古いけど、勉強するのにええ感じ(個人の感想)- 画面に文字列を表示できた- puts() で文字列を表示した!- stdio.h を include すると使える!まとめ
乙