情報処理演習 - osaka...
TRANSCRIPT
情報処理演習 CygwinでHello, world!
システム科学科 生物工学コース 佐々木耕太
http://www7.bpe.es.osaka-u.ac.jp/~kota/classes/jse.html [email protected]
および、結果のテキスト出力
Notepad++をクリックして、
クリックし
Notepad++を起ちあげる
改行コードがWindows (CR LF)になっているので、これを右クリックし、
Unix (LF)に変更する (Unix (LF)をクリックする)
これから使うCygwinは、Linuxのような環境をWindowsで実現するソフトウェア
Unix (LF)になった
最も簡単なプログラム
以上のプログラムに helloworld.cと名前を 付けて保存する
キーボードの¥で入力する (¥と表示されるかもしれない)
タブによる字下げ(インデント) (字下げされる文字数は環境による)
.hまで書く (.hを省くのはC++の記法)
#include <stdio.h>
int main(void) { printf(“Hello, world!\n”);
return 0; }
最後に改行
ソースコード(プログラム)を作成する
ソースコードを保存するディレクトリは本来どこでもいいが、 Cygwinでコンパイルし実行するので、PC ▶ Z:¥ ▶ linuxhomeに移動し、
クリックする
PC ▶ Z:¥ ▶ linuxhomeに移動した
ファイルの種類をC source file (*c; *.lex)に変更すれば、 これまでに作成したソースファイルも表示される
ファイル名の拡張子を c にしたことで、 C言語の予約語などに色がついた
クリックし
今度はCygwinをクリックして、
Cygwinを起ちあげる
カレント作業ディレクトリを ソースコードを保存した ディレクトリに変更する
pwd, cd, lsなどの基本的な UNIXコマンドは使えますか?
基本的なUNIXコマンド• pwd
• cd ◯◯
• ls
カレントディレクトリ(今いる、作業ディレクトリ)を表示する
◯◯というディレクトリに移動し、◯◯を新たなカレントディレクトリとする(◯◯はもともといたカレントディレクトリのサブディレクトリでなくてはいけない)
ソースファイルを保存したディレクトリに移動するために使う
カレントディレクトリにあるファイルとディレクトリを出力する
さっき作ったソースコードがあるかどうか確認すると、
ちゃんとある
gcc ◯◯.c -o ◯◯.exe もしくは gcc ◯◯.c -o ◯◯.exe -lm でコンパイルし、
コンパイルエラーが出たら、ソースコードを修正する(ここではコンパイルエラーはなかった)
./◯◯.exe で実行し、
結果が正しかったらおめでとう。 正しくなかったら (ノω・、)ウゥ・・・
プログラムを書き直す。
結果のテキスト出力1 Cygwinからのコピー&ペースト
右ボタンをドラッグして コピーしたい範囲を 選択する
右クリックして、 コピーを選ぶ
適当なテキストエディタに
貼り付けると、
選択した範囲が貼り付けられる
結果のテキスト出力2 標準出力のリダイレクト
./◯◯.exe > ◯◯.txt で標準出力をテキストファイルに リダイレクトできる
コマンドラインでは何も返事はないが、
ファイルがあるかどうか確認すると、
指定したテキストファイルができている
このファイルの中に
実行結果が書き込まれている
エクスプローラーでも ファイルができたことは 確認できて、
適当なテキストエディタで開いてみると、
プログラムの出力が ファイルに書き込まれている