ビルド処理

Size: px
Start display at page:

Download "ビルド処理"

Transcription

1 著者 : 大和正武 <yamato@redhat.com> 生成日時 : :59 Copyright 2013 Red Hat, K.K. Copyright 2015 Red Hat, K.K. ビルド処理 The text of and illustrations in this document are licensed by Red Hat under a Creative Commons Attribution Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is available at In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for the original version.

2 アウトライン gcc のコマンドライン ビルド処理を理解するために知っておく必要がある 読解を補助するのに小さなプログラムを書くことがある これをビルドするのにも役立つ ビルドツール 読むべきソースコードを割り出すための予備知識として必要である ソフトウェアによる違いが大きく (C 言語と比べて ) 解説した書籍も少ない make について説明する ライブラリ 2

3 gcc のコマンドライン プリプロセス コンパイル リンク 3

4 gcc のコマンドライン : プリプロセス -E オプションを使うとプリプロセスだけを実行できる 4

5 gcc のコマンドライン : コンパイル foo.c というソースコードファイルをコンパイルしてオブジェクトファイル foo.o を得るための典型的なコマンドラインを示す 厳密には -I と -D はプリプロセッサへの指示である $ gcc -c -g -O2 -I. -I../include -DDEBUG=1 foo.c -c リンク処理を実行せずコンパイル処理だけを実行する すなわちfoo.cからfoo.oを作成する -g デバッガが使うデバッグ情報を盛り込む -On 最適化を実施する nが大きいほど激しく最適化する nに0を指定すると最適化しない 5

6 gcc のコマンドライン : コンパイル インクルードファイルの探索パス #include "FILE" #include <FILE> ファイルのインクルードの指示があった場合 次の場所を順番に探す 1. "FILE" についてはカレントディレクトリ 2. gcc に内蔵されたデフォルトの探索パス 3. -I オプションで指定されたパス $ gcc -c -g -O2 -I. -I../include -DDEBUG=1 foo.c カレントディレクトリと親ディレクトリ下にある include ディレクトリからインクルードファイルを探せという意味になる 6

7 gcc のコマンドライン : コンパイル デフォルトの探索パス 空のファイルを用意して -v オプションをつけて gcc を実行するとデフォルトの探索パスを確認できる $ touch baz.c $ gcc -v baz.c #include <...> search starts here: /usr/lib/gcc/x86_64-redhat-linux/4.7.2/include /usr/local/include /usr/include End of search list. 7

8 gcc のコマンドライン : コンパイル マクロ定義 ソースコード上と同様にコマンドラインからマクロ定義できる #define DEBUG 1 をコマンドラインで定義すると次のようになる : -DDEBUG=1 次のような条件付きコンパイル箇所を制御するのに良く使われる #ifdef DEBUG #include <stdio.h> #define LOG(X) fprintf(stderr, "LOG: %s\n", X) #else #define LOG(X) #endif... LOG("something debug log"); 8

9 gcc のコマンドライン : リンク ( この説明では共有ライブラリを想定している ) オブジェクトファイルとライブラリを連結して実行ファイルを生成する為の典型的な典型的なコマンドラインを示す $ gcc -o my_app -L. -L../libs -lmy_cypto -lmy_algorithm foo.o bar.o baz.o -o 生成する実行ファイルの名前 -lname リンクするライブラリの名前 -LDIR libname.soがリンクの対象となる ライブラリファイルを探索するパス みつからないとデフォルトのライブラリ探索パスから探す 実行ファイルの生成にあたり 実行ファイル中から参照されている全ての変数 関数について定義を発見できない場合 リンク処理は失敗する 9

10 gcc のコマンドライン : リンク デフォルトのライブラリ探索パス オプション -print-search-dirs をつけて gcc を呼び出すと gcc に内蔵されたデフォルトのライブラリパスを確認できる $ gcc -print-search-dirs... libraries: =/usr/lib/gcc/x86_64-redhat-linux/4.7.2/:... 10

11 gcc のコマンドライン : リンク リンクされているライブラリの確認 ldd コマンドを使うとあるプログラムにどのようなライブラリがリンクされているか確認できる $ ldd /usr/bin/vi linux-vdso.so.1 => (0x00007ffffaccd000) libselinux.so.1 => /lib64/libselinux.so.1 (0x ) libtinfo.so.5 => /lib64/libtinfo.so.5 (0x a5c00000) libacl.so.1 => /lib64/libacl.so.1 (0x a ) libc.so.6 => /lib64/libc.so.6 (0x ) libdl.so.2 => /lib64/libdl.so.2 (0x c00000) /lib64/ld-linux-x86-64.so.2 (0x c00000) libattr.so.1 => /lib64/libattr.so.1 (0x a4c00000) 11

12 ビルドツール gccなどのコマンドを呼び出してプログラム / ライブラリをビルドする 手順を記したスクリプト ( ビルドスクリプト ) を入力とする 様々なビルドツールがあるが 広く使われているmakeを取り上げる 12

13 ビルドツール : make と Makefile コマンド名 : make 特に指定しない場合 Makefile をビルドスクリプトとして使う 読むべきソースコードを割り出すのにMakefileを読まないといけないことがある Makefileに記載したルールに基づいてビルドする ファイルの更新時刻を比較して必要な部分だけをビルドする 13

14 ビルドツール : make ルール Makefile には ビルドの各ステップ ( ルール ) を以下の書式で記述します 成果物 : 入力... 入力から成果物を得るコマンドライン... 成果物 のことをターゲットと呼ぶ 入力から成果物を得るコマンドライン のことをアクションと呼ぶ あるルールでのターゲットが別のルールでの入力となっていても良い 14

15 ビルドツール : make ビルド make の引数にターゲットを指定すると現在のディレクトリから Makefile を探し ターゲットをビルドしようとする ターゲットを省略した場合 Makefile 中の最初のルール中のターゲットをビルドしょうとする $ make [ ターゲット ] ターゲットに必要な入力が存在しない場合 あるいはターゲットよりも入力の方が新しい場合 まず入力をターゲットとしてビルドを実施する 15

16 ビルドツール : make Makefile の例 myapp: foo.o bar.o gcc -o myapp foo.o bar.o foo.o: foo.c gcc -c foo.c bar.o: bar.c gcc -c bar.c myapp を作るのに foo.o と bar.o が必要である foo.o が無ければまず foo.o をターゲットとする bar.o が無ければまず bar.o をターゲットとする myapp が存在しなければ foo.o と bar.o をリンクして生成する myapp が存在しても foo.o や bar.o よりも古ければリンクして生成する foo.o を作るには foo.c が必要である foo.o が無ければ foo.c を引数に gcc を呼び出して foo.o を生成する foo.o が foo.c よりも古い場合にも gcc を呼び出して foo.o を生成する 16

17 bar.o を作るには bar.c が必要である... 17

18 ビルドツール : make 変数 Makefile 中での初期化 参照 VAR = VALUE $(VAR) 例 CFLAGS = -O2 myapp: foo.o bar.o gcc -o myapp foo.o bar.o foo.o: foo.c gcc -c $(CFLAGS) foo.c bar.o: bar.c gcc -c $(CFLAGS) bar.c 定義されていない変数の値は空文字列となる 18

19 ビルドツール : make コマンドラインからの変数の指定 コマンドラインからMakefile 中で指定した変数の初期値を指定できる Makefile 中の記載に優先する make VAR1=VALUE1 VAR2=VALUE2... [target] make CFALGS="-g -DDEBUG=1" myapp 19

20 ビルドツール : make 自動変数 値が文脈によって決まる特別な変数がある $@ そのルールのターゲットの名前 $< 先頭の入力 $^ 全ての入力 利用例 CFLAGS = -O2 myapp: foo.o bar.o gcc -o $@ $^ foo.o: foo.c gcc -c $(CFLAGS) $< bar.o: bar.c gcc -c $(CFLAGS) $< 20

21 ビルドツール : make 内蔵ルール 典型的なルールは make コマンド内に定義されている CFLAGS=-g myapp: foo.o bar.o gcc -o $@ $^ make -p -f /dev/null とすると内蔵ルールの一覧が表示される.c から.o を生成する内蔵ルールの抜粋 CC = cc OUTPUT_OPTION = -o $@ COMPILE.c = $(CC) $(CFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -c.c.o: $(COMPILE.c) $(OUTPUT_OPTION) $< 21

22 ビルドツール : make make の呼び出し元 make をどのように呼び出すか ということはどのような目的でビルドするのかによって異なる Fedora に同梱されているパッケージについては spec ファイルに記載したコマンドラインで make を実行する src.rpm をインストールすると spec ファイルが ~/rpmbuild/specs 以下に配置される 22

23 ライブラリ ファイルの役割.h ファイル ( ヘッダファイル ) 変数や関数の宣言および型の定義が記載されている コンパイル処理に必要となる プログラムの実行時には必要ない.so ファイル ライブラリに関連する変数や関数の定義が記載されている リンク処理及び実行時に必要となる 23

24 ライブラリ エクスポート ライブラリのソースコード中で プログラム全域 のスコープを持つ変数と関数だけが エクスポート される そのライブラリにリンクするアプリケーションやライブラリは エクスポート された変数と関数だけを利用できる エクスポート された変数 関数はヘッダファイルに宣言されているはず 24

25 ライブラリ nm コマンド nm コマンドを使うとライブラリから何が エクスポート されているかわかる $ nm -D /usr/lib/libz.so.1... U close 42681e30 T compress 42681d40 T compress2 U free... T エクスポートされている関数 U 未定義の名前 B, D エクスポートされている変数 25

26 ライブラリ パッケージング 実行時に必要のあるファイルとコンパイル時に必要なファイルを分けて 2 つのバイナリパッケージが用意されている ヘッダファイルを含むバイナリパッケージの名前には -devel というサフィックスが付く ソースパッケージは共通である 26

27 27

28 ライブラリ devel パッケージの例 $ rpm -qi zlib Name : zlib... Summary : The zlib compression and decompression library $ rpm -ql zlib /lib64/libz.so.1 /lib64/libz.so $ rpm -qi zlib-devel Name : zlib-devel... Summary : Header files and libraries for Zlib development $ rpm -ql zlib-devel /usr/include/zconf.h 28

29 29 /usr/include/zlib.h...

C言語復習

C言語復習 著者 : 大和正武 生成日時 : 20151102-17:59 Copyright 2013 Red Hat, K.K. Copyright 2015 Red Hat, K.K. C 言語復習 The text of and illustrations in this document are licensed by Red Hat under a Creative

More information

slide5.pptx

slide5.pptx ソフトウェア工学入門 第 5 回コマンド作成 1 head コマンド作成 1 早速ですが 次のプログラムを head.c という名前で作成してください #include #include static void do_head(file *f, long nlines); int main(int argc, char *argv[]) { if (argc!=

More information

Microsoft Word - Training10_プリプロセッサ.docx

Microsoft Word - Training10_プリプロセッサ.docx Training 10 プリプロセッサ 株式会社イーシーエス出版事業推進委員会 1 Lesson1 マクロ置換 Point マクロ置換を理解しよう!! マクロ置換の機能により 文字列の置き換えをすることが出来ます プログラムの可読性と保守性 ( メンテナンス性 ) を高めることができるため よく用いられます マクロ置換で値を定義しておけば マクロの値を変更するだけで 同じマクロを使用したすべての箇所が変更ができるので便利です

More information

分割コンパイル (2018 年度 ) 担当 : 笹倉 佐藤 分割コンパイルとは 一つのプログラムのソースを複数のソースファイルに分けてコンパイルすること ある程度大きなプログラムの場合ソースファイルをいくつかに分割して開発するのが普通 1

分割コンパイル (2018 年度 ) 担当 : 笹倉 佐藤 分割コンパイルとは 一つのプログラムのソースを複数のソースファイルに分けてコンパイルすること ある程度大きなプログラムの場合ソースファイルをいくつかに分割して開発するのが普通 1 分割コンパイル (2018 年度 ) 担当 : 笹倉 佐藤 2018.12.20 分割コンパイルとは 一つのプログラムのソースを複数のソースファイルに分けてコンパイルすること ある程度大きなプログラムの場合ソースファイルをいくつかに分割して開発するのが普通 1 なぜ分割コンパイルするのか 1. コンパイル時間を短縮するため 2. ソースコードを見やすくするため 3. ソースコードを再利用しやすくするため

More information

プログラミング実習I

プログラミング実習I プログラミング実習 I 05 関数 (1) 人間システム工学科井村誠孝 m.imura@kwansei.ac.jp 関数とは p.162 数学的には入力に対して出力が決まるもの C 言語では入出力が定まったひとまとまりの処理 入力や出力はあるときもないときもある main() も関数の一種 何かの仕事をこなしてくれる魔法のブラックボックス 例 : printf() 関数中で行われている処理の詳細を使う側は知らないが,

More information

数はファイル内のどの関数からでも参照できるので便利ではありますが 変数の衝突が起こったり ファイル内のどこで値が書き換えられたかわかりづらくなったりなどの欠点があります 複数の関数で変数を共有する時は出来るだけ引数を使うようにし グローバル変数は プログラムの全体の状態を表すものなど最低限のものに留

数はファイル内のどの関数からでも参照できるので便利ではありますが 変数の衝突が起こったり ファイル内のどこで値が書き換えられたかわかりづらくなったりなどの欠点があります 複数の関数で変数を共有する時は出来るだけ引数を使うようにし グローバル変数は プログラムの全体の状態を表すものなど最低限のものに留 第 10 章分割コンパイル 1 ソースを分割する今まで出てきたソースは全て一つのソースファイルにソースを記述してきました しかし ソースが長くなっていくと全てを一つのファイルに書くと読みづらくなります そこで ソースを複数のファイルに分割してコンパイルを行う分割コンパイルをします 今章は章名にもなっている 分割コンパイルの方法についてやります 分割コンパイルする時は大抵 関連性のある機能ごとにファイルにまとめます

More information

memo

memo 数理情報工学演習第一 C プログラミング演習 ( 第 5 回 ) 2015/05/11 DEPARTMENT OF MATHEMATICAL INFORMATICS 1 今日の内容 : プロトタイプ宣言 ヘッダーファイル, プログラムの分割 課題 : 疎行列 2 プロトタイプ宣言 3 C 言語では, 関数や変数は使用する前 ( ソースの上のほう ) に定義されている必要がある. double sub(int

More information

02: 変数と標準入出力

02: 変数と標準入出力 C プログラミング入門 総機 1 ( 月 1) 14: 発展事項 2014-07-13 1 今日の内容 これまでの講義で説明していない事項についていくつか簡単に紹介する 文法 標準入出力ファイル 異常終了 短絡評価 文字定数の型 キャスト 変数の宣言位置 グローバル変数 静的変数 (static) const 変数 プリプロセッサ ディレクティブ マクロ ファイルの読み込み 数学関数のエラーチェック

More information

インテル(R) Visual Fortran コンパイラ 10.0

インテル(R) Visual Fortran コンパイラ 10.0 インテル (R) Visual Fortran コンパイラー 10.0 日本語版スペシャル エディション 入門ガイド 目次 概要インテル (R) Visual Fortran コンパイラーの設定はじめに検証用ソースファイル適切なインストールの確認コンパイラーの起動 ( コマンドライン ) コンパイル ( 最適化オプションなし ) 実行 / プログラムの検証コンパイル ( 最適化オプションあり ) 実行

More information

7th CodeGear Developer Camp

7th CodeGear Developer Camp A6 Delphi テクニカルセッション RTL ソースを利用する Delphi デバッグ技法 CodeGear R&D 有澤雄志 Copyright 2007 CodeGear. All Rights Reserved. 本文書の一部または全部の転載を禁止します 1 アジェンダ RTL の利用準備 IDE から使ってみる Copyright 2007 CodeGear. All Rights Reserved.

More information

24th Embarcadero Developer Camp

24th Embarcadero Developer Camp 17 Th Developer Camp B4 Delphi/C++Builder テクニカルワークショップ Delphi / C++Builder 旧バージョンアプリケーションの移行 エンバカデロ テクノロジーズサポートチーム with 高橋智宏 1 17 Th Developer Camp Delphi Q1 2 midas.dll Q. 別々のバージョンで作成したデータベースアプリケーションがあります

More information

プログラミング及び演習 第1回 講義概容・実行制御

プログラミング及び演習 第1回 講義概容・実行制御 プログラミング及び演習 第 12 回大規模プログラミング (2015/07/11) 講義担当情報連携統轄本部情報戦略室大学院情報科学研究科メディア科学専攻教授森健策 本日の講義 演習の内容 大きなプログラムを作る 教科書第 12 章 make の解説 プログラミングプロジェクト どんどんと進めてください 講義 演習ホームページ http://www.newves.org/~mori/15programming

More information

OpenFOAM_compile_basic 1 / /12/23 12: 年 12 月 13 日オープン CAE 富山 ( 富山県立大学中川慎二 ) Disclaimer OPENFOAM is a registered trade mark

OpenFOAM_compile_basic 1 / /12/23 12: 年 12 月 13 日オープン CAE 富山 ( 富山県立大学中川慎二 ) Disclaimer OPENFOAM is a registered trade mark 1 / 5 2014/12/23 12:25 2014 年 12 月 13 日オープン CAE 勉強会 @ 富山 ( 富山県立大学中川慎二 ) Disclaimer OPENFOAM is a registered trade mark of OpenCFD Limited, the producer of the OpenFOAM software and owner of the OPENFOAM

More information

wix #wix

wix #wix wix #wix 1 1: wix 2 2 WiX 2 WiX 2 WiX 2 3 Examples 3 3 3 3 4 8 You can share this PDF with anyone you feel could benefit from it, downloaded the latest version from: wix It is an unofficial and free wix

More information

Red Hat Mobile Application Platform 4.2 RHMAP のインストール

Red Hat Mobile Application Platform 4.2 RHMAP のインストール Red Hat Mobile Application Platform 4.2 RHMAP のインストール Red Hat Mobile Application Platform 4.2 向け Red Hat Customer Content Services Red Hat Mobile Application Platform 4.2 RHMAP のインストール Red Hat Mobile

More information

ソフトウェアエンジニアリング - 機能 #54

ソフトウェアエンジニアリング - 機能 #54 ソフトウェアエンジニアリング - 機能 #54 GitBucket 3.11 の RPM を H2 database migration ツールを含めて作成する 2016/02/28 10:47 - 高橋徹 ステータス : 却下開始日 : 2016/02/28 優先度 : 通常期日 : 担当者 : 高橋徹進捗率 : 100% カテゴリ : 予定工数 : 0.00 時間 対象バージョン : Linux

More information

kiso2-03.key

kiso2-03.key 座席指定はありません Linux を起動して下さい 第3回 計算機基礎実習II 2018 のウェブページか ら 以下の課題に自力で取り組んで下さい 計算機基礎実習II 第2回の復習課題(rev02) 第3回の基本課題(base03) 第2回課題の回答例 ex02-2.c include int main { int l int v, s; /* 一辺の長さ */ /* 体積 v

More information

Microsoft Word - PGI WorkstationServer事前準備 doc

Microsoft Word - PGI WorkstationServer事前準備 doc PGI Workstation/Server インストール事前準備について (Red Hat Enterprise Linux for AMD64, SUSE Linux) 2007 年 11 月版 (Rev. 7.1-A) 株式会社ソフテック HPC ソリューション部 (http://www.softek.co.jp/spg/) SofTek 目次 1 はじめに...1 2 Red Hat Enterprise

More information

appli_HPhi_install

appli_HPhi_install 2018/3/7 HΦ version 3.0.0 インストール手順書 (Linux 64 ビット版 ) 目次 1. アプリケーション概要...- 1-2. システム環境...- 1-3. 必要なツール ライブラリのインストール...- 1-1 cmake...- 2-2 numpy...- 3-4. アプリケーションのインストール...- 4-5. 動作確認の実施...- 5 - 本手順書は HΦ

More information

C プログラミング演習 1( 再 ) 2 講義では C プログラミングの基本を学び 演習では やや実践的なプログラミングを通して学ぶ

C プログラミング演習 1( 再 ) 2 講義では C プログラミングの基本を学び 演習では やや実践的なプログラミングを通して学ぶ C プログラミング演習 1( 再 ) 2 講義では C プログラミングの基本を学び 演習では やや実践的なプログラミングを通して学ぶ 今回のプログラミングの課題 次のステップによって 徐々に難易度の高いプログラムを作成する ( 参照用の番号は よくわかる C 言語 のページ番号 ) 1. キーボード入力された整数 10 個の中から最大のものを答える 2. 整数を要素とする配列 (p.57-59) に初期値を与えておき

More information

Microsoft PowerPoint - 計算機言語 第7回.ppt

Microsoft PowerPoint - 計算機言語 第7回.ppt 計算機言語第 7 回 長宗高樹 目的 関数について理解する. 入力 X 関数 f 出力 Y Y=f(X) 関数の例 関数の型 #include int tasu(int a, int b); main(void) int x1, x2, y; x1 = 2; x2 = 3; y = tasu(x1,x2); 実引数 printf( %d + %d = %d, x1, x2, y);

More information

はじめに このドキュメントではftServerに関する障害調査を行う際に 必要となるログ データの取得方法を説明しています ログ データの取得には 初期解析用のデータの取得方法と 詳細な調査を行うときのデータ取得方法があります 特別な理由でOS 側のログが必要となった場合には RHELログの取得につ

はじめに このドキュメントではftServerに関する障害調査を行う際に 必要となるログ データの取得方法を説明しています ログ データの取得には 初期解析用のデータの取得方法と 詳細な調査を行うときのデータ取得方法があります 特別な理由でOS 側のログが必要となった場合には RHELログの取得につ ftserver におけるログ取得手順 (Linux 編 ) Rev 0.5: 2017/06/08 1 はじめに このドキュメントではftServerに関する障害調査を行う際に 必要となるログ データの取得方法を説明しています ログ データの取得には 初期解析用のデータの取得方法と 詳細な調査を行うときのデータ取得方法があります 特別な理由でOS 側のログが必要となった場合には RHELログの取得について

More information

MSI Tip: システム検索による INSTALLDIRの設定

MSI Tip: システム検索による INSTALLDIRの設定 MSI Tip: カスタムアクションによるログファイルへの出力 この文書は Acresso Software の次の文書を元に記載しています http://www.acresso.com/webdocuments/pdf/msi_writing_to_the_log_file.pdf Tip: MSI Tip: Writing to the Log File from a Custom Action

More information

Microsoft Word - matlab-coder-code-generation-quick-start-guide-japanese-r2016a

Microsoft Word - matlab-coder-code-generation-quick-start-guide-japanese-r2016a MATLAB コードを使用した C コードの生成クイックスタートガイド (R2016a) 最初のスタンドアロン C コードの生成 スタンドアロン C コードを生成するには [ ビルド ] を [ ソースコード ] [ スタティックライブラリ ] [ ダイナミックライブラリ ] または [ 実行ファイル ] のいずれかに切り替えます MATLAB Coder を使用することで MATLAB コードから

More information

Microsoft PowerPoint - 第5章補足-DB2組み込みSQL.ppt

Microsoft PowerPoint - 第5章補足-DB2組み込みSQL.ppt 開発編第 5 章補足 DB2 組み込み SQL 本書に含まれている情報は 正式な IBM のテストを受けていません また 明記にしろ 暗黙的にしろ なんらの保証もなしに配布されるものです この情報の使用またはこれらの技術の実施は いずれも 使用先の責任において行われるべきものであり それらを評価し 実際に使用する環境に統合する使用先の判断に依存しています それぞれの項目は

More information

プレポスト【問題】

プレポスト【問題】 コース名 : 基礎から学ぶ!Excel VBA による業務の自動化 受講日 氏名 1 Excel VBA を使用するメリットとして誤っているものを 1 つ選びなさい 1. 手作業では手間のかかる作業も プログラムに記述した処理は一括して実行されるため 何段階ものメニュー操作を行う必要がなくなる 2. プログラムに書いた処理は記述どおりに実行されるため だれがいつ何回行っても確実な処理がなされ 誤動作を防ぐことができる

More information

cocos2d-x #cocos2d-x

cocos2d-x #cocos2d-x cocos2d-x #cocos2d-x 1 1: cocos2d-x 2 2 Examples 2 Mac OS X 2 2 2 2 Windows 3 3 3 4 8 You can share this PDF with anyone you feel could benefit from it, downloaded the latest version from: cocos2d-x It

More information

gengo1-12

gengo1-12 外部変数 関数の外で定義される変数を外部変数 ( 大域変数 ) と呼ぶ 外部変数のスコープは広域的 ( プログラム全体 ) 全ての関数で参照可能 int a=10; double x=3.14159; printf( a = %d\n, a); sample(); printf( %f\n, x); void sample(void) printf( %f\n, x); x += 1.0; 外部変数

More information

日本アンドロイドの会 四国支部 Kickoff ミーティング in ABC2009

日本アンドロイドの会 四国支部 Kickoff ミーティング in ABC2009 NDK の使い方 Android のネイティブ開発環境 2009.8.14 20:25-21:00 京都リサーチパーク 4 号館 2F ルーム 2A 日本 Android の会幹事四国支部長 瀬戸直喜 この資料の一部は Google が作成 提供しているコンテンツをベースに変更したもので クリエイティブコモンズの表示 2.5 ライセンスに記載の条件に従って使用しています アジェンダ 概要 イントロダクション

More information

この時お使いの端末の.ssh ディレクトリ配下にある known_hosts ファイルから fx.cc.nagoya-u.ac.jp に関する行を削除して再度ログインを行って下さい

この時お使いの端末の.ssh ディレクトリ配下にある known_hosts ファイルから fx.cc.nagoya-u.ac.jp に関する行を削除して再度ログインを行って下さい 20150901 FX10 システムから FX100 システムへの変更点について 共通... 1 Fortran の変更点... 2 C/C++ の変更点... 4 C の変更点... 5 C++ の変更点... 7 共通 1. プログラミング支援ツールの更新 -FX システムについて旧バージョンのプログラミング支援ツールは利用できません 下記からダウンロードの上新規インストールが必要です https://fx.cc.nagoya-u.ac.jp/fsdtfx100/install/index.html

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション 2018/10/05 竹島研究室創成課題 第 2 回 C 言語演習 変数と演算 東京工科大学 加納徹 前回の復習 Hello, world! と表示するプログラム 1 #include 2 3 int main(void) { 4 printf("hello, world! n"); 5 return 0; 6 } 2 プログラム実行の流れ 1. 作業ディレクトリへの移動 $ cd

More information

講習No.12

講習No.12 前回までの関数のまとめ 関数は main() 関数または他の関数から呼び出されて実行される. 関数を呼び出す側の実引数の値が関数内の仮引数 ( 変数 ) にコピーされる. 関数内で定義した変数は, 関数の外からは用いることができない ( ローカル変数 ). 一般に関数内で仮引数を変化しても, 呼び出し側の変数は変化しない ( 値渡し ). 関数内で求めた値は return 文によって関数値として呼び出し側に戻される.

More information

AquesTalk プログラミングガイド

AquesTalk プログラミングガイド AquesTalk プログラミングガイド ( 株 ) アクエスト 1. 概要 本文書は 規則音声合成ライブラリ AquesTalk をアプリケーションに組み込んで使用するためのプログラミングに関して 方法および注意点を示したものです AquesTalk には 2 種類のライブラリがあります 音声データをメモリ上に生成するものと サウンドデバイスに出力する 2 種類があります 使用するアプリケーションに応じて選択してください

More information

Microsoft PowerPoint - InfPro_I6.pptx

Microsoft PowerPoint - InfPro_I6.pptx 今日の学習内容 ファイルとディレクトリ ( 続 )(pp.34-36) 色々なUNIXのコマンド (pp.203-209) 今日の基礎教養セミナ講演会 Yahooの坂本さん 3コマ (13:10~) A204 ディレクトリ ( 復習 ) UNIXファイルシステムにはファイルとディレクトリがあり ツリー状の階層型構造をしている ツリー構造の頂点 ( ツリー構造の根の部分 ) 一番上の唯一のディレクトリをルートディレクトリと呼ぶ

More information

Fortran 勉強会 第 5 回 辻野智紀

Fortran 勉強会 第 5 回 辻野智紀 Fortran 勉強会 第 5 回 辻野智紀 今回のお品書き サブルーチンの分割コンパイル ライブラリ 静的ライブラリ 動的ライブラリ モジュール その前に 以下の URL から STPK ライブラリをインストールしておいて下さい. http://www.gfd-dennou.org/library/davis/stpk 前回参加された方はインストール済みのはず. サブルーチンの分割コンパイル サブルーチンの独立化

More information

ソフトウェア基礎 Ⅰ Report#2 提出日 : 2009 年 8 月 11 日 所属 : 工学部情報工学科 学籍番号 : K 氏名 : 當銘孔太

ソフトウェア基礎 Ⅰ Report#2 提出日 : 2009 年 8 月 11 日 所属 : 工学部情報工学科 学籍番号 : K 氏名 : 當銘孔太 ソフトウェア基礎 Ⅰ Report#2 提出日 : 2009 年 8 月 11 日 所属 : 工学部情報工学科 学籍番号 : 095739 K 氏名 : 當銘孔太 1. UNIX における正規表現とは何か, 使い方の例を挙げて説明しなさい. 1.1 正規表現とは? 正規表現 ( 正則表現ともいう ) とは ある規則に基づいて文字列 ( 記号列 ) の集合を表す方法の 1 つです ファイル名表示で使うワイルドカードも正規表現の兄弟みたいなもの

More information

Microsoft Word - 【第5分科会】ConcolicTestingグループ_付録_修正_ doc

Microsoft Word - 【第5分科会】ConcolicTestingグループ_付録_修正_ doc 付録 1 研究スケジュール 本研究は以下のスケジュールで行った. 項目内容期間論文調査 CREST に関する論文の調査 2014 年 5 月 CREST のインストール VMWare による Linux 環境の構築と,CREST 及び必要プログラムのインストール CREST の試用サンプルコードにて CREST を実行して, 出力結果を確認 SIG の準備 実施ソフトウェア品質シンポジウム SIG:

More information

memo

memo 数理情報工学演習第一 C ( 第 8 回 ) 206/06/3 DEPARTMENT OF MATHEMATICAL INFORMATICS 今日の内容 : プロトタイプ宣言 ヘッダーファイル, プログラムの分割 プライオリティキュー ヒープ 課題 : ヒープソート 2 プロトタイプ宣言 C 言語では, 関数や変数は使用する前 ( ソースの上のほう ) に定義されている必要がある. double sub(int

More information

PowerPoint Presentation

PowerPoint Presentation プログラミング基礎 第 2 週 (4,5,6 回 ) 2011-10-07 出村公成 この資料の再配布を禁止します 予定 プログラミング入門 (45 分 ) 変数 入出力 分岐 演習 (90 分 ) タッチタイプ練習 統合開発環境 Codeblocksの使い方 教科書例題の打ち込みと実行 プログラミング入門 C 言語の簡単な例を体験 変数 入出力 分岐 プログラムの例リスト 2.1 改 #include

More information

gengo1-12

gengo1-12 外部変数 関数の外で定義される変数を外部変数 ( 大域変数 ) と呼ぶ 外部変数のスコープは広域的 ( プログラム全体 ) 全ての関数で参照可能 int a=10; double x=3.14159; printf( a = %d\n, a); sample(); printf( %f\n, x); void sample(void) printf( %f\n, x); x += 1.0; 外部変数

More information

7th CodeGear Developer Camp

7th CodeGear Developer Camp A3 C++Builder テクニカルセッション wxforms で始める wxwidgets プログラミング CodeGear 高橋智宏 1 アジェンダ wxwidgets とは? wxforms とは? wxforms のインストール & 使い方 MacOS X(10.4.x, Carbon) でのビルド Linux(CentOS 4.5, GTK2) でのビルド 2 wxwidgets とは?

More information

RL78開発環境移行ガイド R8C/M16C, H8S/H8SXからRL78への移行(統合開発環境編)(High-performance Embedded Workshop→CS+)

RL78開発環境移行ガイド R8C/M16C, H8S/H8SXからRL78への移行(統合開発環境編)(High-performance Embedded Workshop→CS+) RL78 開発環境移行ガイド R8C/M16C, H8S/H8SXからRL78への移行 ( 統合開発環境編 ) (High-performance Embedded Workshop CS+) 2017/4/7 R20UT2087JJ0103 ソフトウェア事業部ソフトウエア技術部ルネサスシステムデザイン株式会社 はじめに 本資料は 統合開発環境 High-performance Embedded Workshop

More information

Microsoft PowerPoint _2.プログラミングの基礎_final.pptx

Microsoft PowerPoint _2.プログラミングの基礎_final.pptx RT ミドルウェアによるロボットプログラミング技術 2. プログラミングの基礎 概要 1. プログラミングの基礎 2. Linuxでのプログラミング 3. Windowsでのプログラミング 目標 : 1.Linux および Windows での開発手法 ( 主に C++) を学ぶ 2.CMake を利用して 同じプログラムを Linux と Windows とでコンパイルして動作させる 2 プログラミングの流れ

More information

(1) プログラムの開始場所はいつでも main( ) メソッドから始まる 順番に実行され add( a,b) が実行される これは メソッドを呼び出す ともいう (2)add( ) メソッドに実行が移る この際 add( ) メソッド呼び出し時の a と b の値がそれぞれ add( ) メソッド

(1) プログラムの開始場所はいつでも main( ) メソッドから始まる 順番に実行され add( a,b) が実行される これは メソッドを呼び出す ともいう (2)add( ) メソッドに実行が移る この際 add( ) メソッド呼び出し時の a と b の値がそれぞれ add( ) メソッド メソッド ( 教科書第 7 章 p.221~p.239) ここまでには文字列を表示する System.out.print() やキーボードから整数を入力する stdin.nextint() などを用いてプログラムを作成してきた これらはメソッドと呼ばれるプログラムを構成する部品である メソッドとは Java や C++ などのオブジェクト指向プログラミング言語で利用されている概念であり 他の言語での関数やサブルーチンに相当するが

More information

gengo1-12

gengo1-12 外部変数 関数の外で定義される変数を外部変数 ( 大域変数 ) と呼ぶ 外部変数のスコープは広域的 ( プログラム全体 ) 全ての関数で参照可能 int a=10; double x=3.14159; printf( a = %d\n, a); sample(); printf( %f\n, x); void sample(void) printf( %f\n, x); x += 1.0; 外部変数

More information

Microsoft PowerPoint _2.プログラミングの基礎_final

Microsoft PowerPoint _2.プログラミングの基礎_final RT ミドルウェアによるロボットプログラミング技術 2. プログラミングの基礎 概要 1. プログラミングの基礎 2. Linuxでのプログラミング 3. Windowsでのプログラミング 目標 : 1.Linux および Windows での開発手法 ( 主に C++) を学ぶ 2.CMake を利用して 同じプログラムを Linux と Windows とでコンパイルして動作させる 2 プログラミングの流れ

More information

GettingStartedTK2

GettingStartedTK2 T-Kernel 2.0 Getting Started T-Engine フォーラム ダウンロード T-Engine フォーラムの web ページから T-Kernel 2.0 Software Package をダウンロード 必要なソフトウェアや開発環境が全て含まれている 2 Copyright 2011 by T-Engine Forum, All Rights Reserved. 1 ReadMe.txt

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション ネットワークプログラミング 演習 第 12 回 Web サーバ上で動作するプログラム 2 今日のお題 PHPのプログラム例 おみくじ アクセスカウンタ ファイルの扱い lock ファイルの所有者 許可と権限 PHP の文法 ( の一部 ) if, for, while の制御の構文は C 言語と似ている 型はあるが 明示的な宣言はしなくてよい 変数には型がない 変数の宣言はしなくてよい 変数名には

More information

コマンドラインから受け取った文字列の大文字と小文字を変換するプログラムを作成せよ 入力は 1 バイトの表示文字とし アルファベット文字以外は変換しない 1. #include <stdio.h> 2. #include <ctype.h> /*troupper,islower,isupper,tol

コマンドラインから受け取った文字列の大文字と小文字を変換するプログラムを作成せよ 入力は 1 バイトの表示文字とし アルファベット文字以外は変換しない 1. #include <stdio.h> 2. #include <ctype.h> /*troupper,islower,isupper,tol コマンドラインから受け取った文字列の大文字と小文字を変換するプログラムを作成せよ 入力は 1 バイトの表示文字とし アルファベット文字以外は変換しない 1. #include 2. #include /*troupper,islower,isupper,tolowerを使うため宣言*/ 3. 4. int get_n(char *); 5. void replace(char

More information

HTML5Lv1_ key

HTML5Lv1_ key HTML5 1 The HTML5 Logo is licensed under Creative Commons Attribution 3.0.Unported by the W3C; http://creativecommons.org/licenses/by/3.0/ The HTML5 Logo is licensed under Creative Commons Attribution

More information

第5回お試しアカウント付き並列プログラミング講習会

第5回お試しアカウント付き並列プログラミング講習会 qstat -l ID (qstat -f) qscript ID BATCH REQUEST: 253443.batch1 Name: test.sh Owner: uid=32637, gid=30123 Priority: 63 State: 1(RUNNING) Created at: Tue Jun 30 05:36:24 2009 Started at: Tue Jun 30 05:36:27

More information

ご利用のコンピュータを設定する方法 このラボの作業を行うには 事前設定された dcloud ラボを使用するか 自身のコンピュータをセットアップします 詳細については イベントの事前準備 [ 英語 ] とラボの設定 [ 英語 ] の両方のモジュールを参照してください Python を使用した Spar

ご利用のコンピュータを設定する方法 このラボの作業を行うには 事前設定された dcloud ラボを使用するか 自身のコンピュータをセットアップします 詳細については イベントの事前準備 [ 英語 ] とラボの設定 [ 英語 ] の両方のモジュールを参照してください Python を使用した Spar ご利用のコンピュータを設定する方法 このラボの作業を行うには 事前設定された dcloud ラボを使用するか 自身のコンピュータをセットアップします 詳細については イベントの事前準備 [ 英語 ] とラボの設定 [ 英語 ] の両方のモジュールを参照してください Python を使用した Spark API との通信 このラーニングモジュールでは Python を使用した Spark API とのインターフェイスを扱います

More information

OpenAM 9.5 インストールガイド オープンソース ソリューション テクノロジ ( 株 ) 更新日 : 2013 年 7 月 19 日 リビジョン : 1.8

OpenAM 9.5 インストールガイド オープンソース ソリューション テクノロジ ( 株 ) 更新日 : 2013 年 7 月 19 日 リビジョン : 1.8 OpenAM 9.5 インストールガイド オープンソース ソリューション テクノロジ ( 株 ) 更新日 : 2013 年 7 月 19 日 リビジョン : 1.8 目次 1. はじめに 1 1.1 本文書の目的... 1 1.2 前提条件... 1 1.3 略語...1 2. 事前準備 2 2.1 ホスト名の名前解決... 2 3. Linix 版パッケージ 3 3.1 システム要件... 3 3.1.1

More information

PowerPoint Presentation

PowerPoint Presentation : ソフトウェアのインストール Development Hub COBOL Server セットアップファイルのダウンロード Eclipse 版 セットアップファイルのダウンロード ソフトウェア要件の確認 ソフトウェア要件の確認 ソフトウェアのインストール ソフトウェアのインストール ライセンス認証 (DevHub COBOL Server 版のライセンスを利用 ) ライセンス認証 (Eclipse

More information

SOC Report

SOC Report PostgreSQL と OS Command Injection N T T コ ミ ュ ニ ケ ー シ ョ ン ズ株式会社 ソ リ ュ ー シ ョ ン サ ー ビ ス 部 第四エンジニアリング部門 セキュリティオペレーション担当 2011 年 11 月 09 日 Ver. 1.1 1. 調査概要... 3 2. POSTGRESQL を使った WEB アプリケーションでの OS COMMAND

More information

AquesTalk2 Linux マニュアル

AquesTalk2 Linux マニュアル AQUEST Corp. http://www.a-quest.com/ 1. 概要 AquesTalk2 Linux Manual 本文書は 規則音声合成ライブラリ AquesTalk2 Linux をアプリケーションに組み込んで使用するためのプログラミングに関しての方法および注意点を示したものです AquesTalk2 は AquesTalk の後継として開発されました 合成音声の声質を規定するデータとして

More information

生成された C コードの理解 コメント元になった MATLAB コードを C コード内にコメントとして追加しておくと その C コードの由来をより簡単に理解できることがよくありま [ 詳細設定 ] [ コード外観 ] を選択 C コードのカスタマイズ より効率的な C コードを生成するベストプラクテ

生成された C コードの理解 コメント元になった MATLAB コードを C コード内にコメントとして追加しておくと その C コードの由来をより簡単に理解できることがよくありま [ 詳細設定 ] [ コード外観 ] を選択 C コードのカスタマイズ より効率的な C コードを生成するベストプラクテ MATLAB コードを使用した C コードの生成クイックスタートガイド (R2012a) 最初のスタンドアロン C コードの生成 スタンドアロン C コードを生成するには MATLAB Coder のペインを [ ビルド ] に切り替えて [C/C++ スタティックライブラリ ] [C/C++ ダイナミックライブラリ ] または [C/C++ 実行ファイル ] のいずれかを選択しま MATLAB Coder

More information

Microsoft PowerPoint - 1_コンパイラ入門セミナー.ppt

Microsoft PowerPoint - 1_コンパイラ入門セミナー.ppt インテルコンパイラー 入門セミナー [ 対象製品 ] インテル C++ コンパイラー 9.1 Windows* 版インテル Visual Fortran コンパイラー 9.1 Windows* 版 資料作成 : エクセルソフト株式会社 Copyright 1998-2007 XLsoft Corporation. All Rights Reserved. 1 インテル コンパイラー入門 本セミナーの内容

More information

Setting up HeapAgent if you’re using

Setting up HeapAgent if you’re using SmartHeap for SMP 入門 / プラットフォームガイド 対応 OS: Windows Server 2003 Windows XP Windows 2000 Windows NT Intel Version 7 SmartHeap は Compuware 株式会社の商標です また HeapAgent は同社の登録商標です Microsoft Windows および Win32 は Microsoft

More information

Microsoft Word - appli_SMASH_tutorial_2.docx

Microsoft Word - appli_SMASH_tutorial_2.docx チュートリアル SMASH version 2.2.0 (Linux 64 ビット版 ) 本チュートリアルでは 量子化学計算ソフトウェア SMASH バージョン 2.2.0 について ソフトウェアの入手 / 実行モジュール作成 / 計算実行 / 可視化処理までを例示します 1. ソフトウェアの入手以下の URL よりダウンロードします https://sourceforge.net/projects/smash-qc/files/smash-2.2.0.tgz/download

More information

AquesTalk10 Linux マニュアル

AquesTalk10 Linux マニュアル AquesTalk10 Linux マニュアル 株式会社アクエスト www.a-quest.com 概要 本文書は 音声合成ライブラリ AquesTalk10 Linux をアプリケーションに組み込んで使用するためのプログラミングの方法 注意点を示したものです AquesTalk10 は かな表記の音声記号列から WAV 音声データを生成するライブラリです AquesTalk10 は 声質パラメータを指定することで様々な声質の音声を生成できる特徴があります

More information

AquesTalk Win Manual

AquesTalk Win Manual AquesTalk Win マニュアル 株式会社アクエスト http://www.a-quest.com/ 1. 概要 本文書は 規則音声合成ライブラリ AquesTalk をアプリケーションに組み込んで使用するためのプログラミングに関して 方法および注意点を示したものです AquesTalk には 2 種類のライブラリがあります 音声データをメモリ上に生成するものと サウンドデバイスに出力する 2

More information

コンピュータ工学講義プリント (7 月 17 日 ) 今回の講義では フローチャートについて学ぶ フローチャートとはフローチャートは コンピュータプログラムの処理の流れを視覚的に表し 処理の全体像を把握しやすくするために書く図である 日本語では流れ図という 図 1 は ユーザーに 0 以上の整数 n

コンピュータ工学講義プリント (7 月 17 日 ) 今回の講義では フローチャートについて学ぶ フローチャートとはフローチャートは コンピュータプログラムの処理の流れを視覚的に表し 処理の全体像を把握しやすくするために書く図である 日本語では流れ図という 図 1 は ユーザーに 0 以上の整数 n コンピュータ工学講義プリント (7 月 17 日 ) 今回の講義では フローチャートについて学ぶ フローチャートとはフローチャートは コンピュータプログラムの処理の流れを視覚的に表し 処理の全体像を把握しやすくするために書く図である 日本語では流れ図という 図 1 は ユーザーに 0 以上の整数 n を入力してもらい その後 1 から n までの全ての整数の合計 sum を計算し 最後にその sum

More information

Introduction Purpose This training course demonstrates the use of the High-performance Embedded Workshop (HEW), a key tool for developing software for

Introduction Purpose This training course demonstrates the use of the High-performance Embedded Workshop (HEW), a key tool for developing software for Introduction Purpose This training course demonstrates the use of the High-performance Embedded Workshop (HEW), a key tool for developing software for embedded systems that use microcontrollers (MCUs)

More information

利用者

利用者 Regional SNS 開発環境構築ガイド 2012 年 2 月 29 日 株式会社ネットワーク応用通信研究所 目次 1. はじめに... 1 2. 前提条件... 1 3. 必要なソフトウェア構成... 1 4. ソフトウェアの導入手順... 1 4.1. 必要ファイルのダウンロード... 1 4.2. 環境設定コマンドの実行... 2 4.3. RegionalSNS の実行... 2 4.4.

More information

file:///D|/C言語の擬似クラス.txt

file:///D|/C言語の擬似クラス.txt 愛知障害者職業能力開発校 システム設計科 修了研究発表会報告書 題名 : C 言語の擬似クラス あらまし : C 言語でクラスを作れるという噂の真偽を確かめるために思考錯誤した まえがき : VC++ や Java その他オブジェクト指向の言語にはクラスが存在して クラスはオブジェクトの設計図である 手法 : C++ のクラスを解析して C++ のクラスを作成して C 言語に翻訳する class struct

More information

LAN Copyright c Daikoku Manabu This tutorial is licensed under a Creative Commons Attribution 2.1 Japan License

LAN Copyright c Daikoku Manabu This tutorial is licensed under a Creative Commons Attribution 2.1 Japan License LAN 2014 3 19 Copyright c 1993 2014 Daikoku Manabu This tutorial is licensed under a Creative Commons Attribution 2.1 Japan License. 1 2 1.1................................... 2 1.2.........................

More information

/*Source.cpp*/ #include<stdio.h> //printf はここでインクルードして初めて使えるようになる // ここで関数 average を定義 3 つの整数の平均値を返す double 型の関数です double average(int a,int b,int c){

/*Source.cpp*/ #include<stdio.h> //printf はここでインクルードして初めて使えるようになる // ここで関数 average を定義 3 つの整数の平均値を返す double 型の関数です double average(int a,int b,int c){ ソフトゼミ A 第 6 回 関数 プログラムは関数の組み合わせでできています 今までのゼミAでも printf や scanf など様々な関数を使ってきましたが なんと関数は自分で作ることもできるのです!! 今日は自作関数を中心に扱っていきます ゲーム制作でも自作関数は避けては通れないので頑張りましょう そもそもまず 関数とは 基本的には 受け取った値に関数によって定められた操作をして その結果の値を返す

More information

目次 はじめに 4 概要 4 背景 4 対象 5 スケジュール 5 目標点 6 使用機材 6 第 1 章 C# 言語 7 C# 言語の歴史 7 基本構文 8 C 言語との違い 9 Java 言語との違い 10.Netフレームワーク 10 開発資料 10 第 2 章 Mono 11 Monoの歴史 1

目次 はじめに 4 概要 4 背景 4 対象 5 スケジュール 5 目標点 6 使用機材 6 第 1 章 C# 言語 7 C# 言語の歴史 7 基本構文 8 C 言語との違い 9 Java 言語との違い 10.Netフレームワーク 10 開発資料 10 第 2 章 Mono 11 Monoの歴史 1 ポリテクセンター埼玉セミナー資料 組込み技術者のための C# Monoを用いたマルチプラットフォームアプリケーション開発技術 第 1.2 版 2018 年 8 月 Microbrains Inc. 渋谷 目次 はじめに 4 概要 4 背景 4 対象 5 スケジュール 5 目標点 6 使用機材 6 第 1 章 C# 言語 7 C# 言語の歴史 7 基本構文 8 C 言語との違い 9 Java 言語との違い

More information

18/12/06 情報工学実験 C コンパイラ (2018 年度 ) 担当 : 笹倉 佐藤 その 3 yacc の構造 定義部 %% 定義部の終了 規則部 %% 規則部の終了 ユーザ定義サブルーチン部 :C のプログラムを書く 形は lex と同じ 1

18/12/06 情報工学実験 C コンパイラ (2018 年度 ) 担当 : 笹倉 佐藤 その 3 yacc の構造 定義部 %% 定義部の終了 規則部 %% 規則部の終了 ユーザ定義サブルーチン部 :C のプログラムを書く 形は lex と同じ 1 情報工学実験 C コンパイラ (2018 年度 ) 担当 : 笹倉 佐藤 2018.12.6 その 3 yacc の構造 定義部 定義部の終了 規則部 規則部の終了 ユーザ定義サブルーチン部 :C のプログラムを書く 形は lex と同じ 1 yacc yacc のキモは規則部 規則部には文法規則を書く左辺 : 右辺 yacc は入力されたプログラムを右辺から左辺に 還元 していく この規則にアクションが書かれていたら還元するときにアクションも実行する.

More information

Microsoft PowerPoint - CproNt02.ppt [互換モード]

Microsoft PowerPoint - CproNt02.ppt [互換モード] 第 2 章 C プログラムの書き方 CPro:02-01 概要 C プログラムの構成要素は関数 ( プログラム = 関数の集まり ) 関数は, ヘッダと本体からなる 使用する関数は, プログラムの先頭 ( 厳密には, 使用場所より前 ) で型宣言 ( プロトタイプ宣言 ) する 関数は仮引数を用いることができる ( なくてもよい ) 関数には戻り値がある ( なくてもよい void 型 ) コメント

More information

(Microsoft Word - FireWall\202\314\227\341\212O\220\335\222\350\202\360\215s\202\244.doc)

(Microsoft Word - FireWall\202\314\227\341\212O\220\335\222\350\202\360\215s\202\244.doc) インストール時に FireWall の例外設定を構成する 注 ) このドキュメントは InstallShield 2012 Premier Edition を基に作成しています InstallShield 2012 以外のバージョンでは設定名などが異なる場合もあります 概要 インストールを行ったアプリケーションが外部環境と通信する製品の場合 正しく実行させるためには Windows デフォルトの Firewall

More information

Microsoft PowerPoint pptx

Microsoft PowerPoint pptx 情報処理 Ⅱ 2012 年 1 月 1~2 月のスケジュール 1 月 16 日 ( 月 ): 第 12 回授業 1 月 19 日 ( 木 ): レポート課題提出期限 17:00 までに, 学科事務室前に提出 1 月 23 日 ( 月 ): 第 13 回授業 1 月 30 日 ( 月 ): 第 14 回授業,A601で実施 1 月 31 日 ( 火 ): 第 15 回授業, おさらい問題 (2 月 6

More information

プログラミングI第10回

プログラミングI第10回 プログラミング 1 第 10 回 構造体 (3) 応用 リスト操作 この資料にあるサンプルプログラムは /home/course/prog1/public_html/2007/hw/lec/sources/ 下に置いてありますから 各自自分のディレクトリにコピーして コンパイル 実行してみてください Prog1 2007 Lec 101 Programming1 Group 19992007 データ構造

More information

Microsoft Word - no11.docx

Microsoft Word - no11.docx 3. 関数 3.1 関数関数は数学の関数と同じようなイメージを持つと良いでしょう 例えば三角関数の様に一つの実数値 ( 角度 ) から値を求めますし 対数関数の様に二つの値から一つの値を出すものもあるでしょう これをイメージしてもらえば結構です つまり 何らかの値を渡し それをもとに何かの作業や計算を行い その結果を返すのが関数です C 言語の関数も基本は同じです 0 cos 1 cos(0) =

More information

memo

memo 計数工学プログラミング演習 ( 第 1 回 ) 2016/04/05 DEPARTMENT OF MATHEMATICAL INFORMATICS 1 担当メンバー : 担当 : 担当教員 : 定兼 ( 数理 2 研 ) 補佐 : 松島 ( 数理 6 研 ) 学生アシスタント : 鈴木, 石山, 中村 担当へのコンタクト e メールアドレス ( 演習についての一般的な相談 ): miprogramming2016+general@gmail.com

More information

Cプログラミング1(再) 第2回

Cプログラミング1(再) 第2回 C プログラミング 1( 再 ) 第 2 回 講義では Cプログラミングの基本を学び演習では やや実践的なプログラミングを通して学ぶ 1 前回のレポートから 前回の宿題 数あてゲーム の説明において 次のように書いていたものがいた : これはコンピュータがランダムに設定した数字を人間が当てるゲームである この説明でどこかおかしなところはないだろうか? 2 コンピュータの用語と日常的な用語の違い 物理において

More information

説明書

説明書 ******************************************************************************** ** ** ** ASCII 範囲外の外部シンボルチェックツール (ASCIICHK) 説明書 ** ** ** ********************************************************************************

More information

Maple 12 Windows版シングルユーザ/ネットワークライセンス

Maple 12 Windows版シングルユーザ/ネットワークライセンス Maple Network Tools インストール 設定手順書 更新日 2017/07/27 はじめに この手順書は Windows 32bit Windows 64bit Mac OS Linux に対応しております 詳しい動作環境については こちらを参照願います http://www.cybernet.co.jp/maple/product/system/maple.html この手順書の説明画面は

More information

GSLetterNeo vol 年 7 月 形式手法コトハジメ TLA + Toolbox を使って (2)- 熊澤努 sra.co.jp はじめに GSLetterNeo Vol.130 で TLA + Toolbox を紹介しました 今回からより詳しく T

GSLetterNeo vol 年 7 月 形式手法コトハジメ TLA + Toolbox を使って (2)- 熊澤努 sra.co.jp はじめに GSLetterNeo Vol.130 で TLA + Toolbox を紹介しました 今回からより詳しく T GSLetterNeo vol.132 2019 年 7 月 形式手法コトハジメ TLA + Toolbox を使って (2)- 熊澤努 kumazawa @ sra.co.jp はじめに GSLetterNeo Vol.130 で TLA + Toolbox を紹介しました 今回からより詳しく TLA + Toolbox について説明していきます 今回は TLA + Toolbox のインストールの仕方から

More information

2006年10月5日(木)実施

2006年10月5日(木)実施 2010 年 7 月 2 日 ( 金 ) 実施 ファイル処理ファイルとはファイル (file) は日常用語では紙などを綴じたものを表すが, コンピュータ用語ではデータの集合体を指す言葉である ファイルは例えば, 文書ファイルやプログラムファイルのように, 用途によって分類されることもあれば, また, テキストファイルやバイナリファイルのように, ファイルの作り方によって分類されることもある なお,

More information

Microsoft Word - K5VSSP32-install.docx

Microsoft Word - K5VSSP32-install.docx K5/VSSP32 ライン観測システムのインストール 2010/07/03 藤沢健太 (1) はじめに NICTが開発した K5/VSSP32 は インターネット VLBI 観測を行うことが目的としたシステムである このシステムはビデオ帯域の信号を PC 内のファイルとして取り込むことができ 様々な面で大変使いやすい 以下では このシステムを電波天文学の分光観測 ( ライン観測 ) に使うことを目指して

More information

プログラミング及び演習 第1回 講義概容・実行制御

プログラミング及び演習 第1回 講義概容・実行制御 プログラミング及び演習 第 12 回大規模プログラミング (2017/07/15) 講義担当大学院情報学研究科知能システム学専攻教授森健策大学院情報学研究科知能システム科学専攻助教小田昌宏 本日の講義 演習の内容 大きなプログラムを作る 教科書第 12 章 make の解説 プログラミングプロジェクト どんどんと進めてください 講義 演習ホームページ http://www.newves.org/~mori/17programming

More information

Prog1_10th

Prog1_10th 2012 年 6 月 20 日 ( 木 ) 実施ポインタ変数と文字列前回は, ポインタ演算が用いられる典型的な例として, ポインタ変数が 1 次元配列を指す場合を挙げたが, 特に,char 型の配列に格納された文字列に対し, ポインタ変数に配列の 0 番の要素の先頭アドレスを代入して文字列を指すことで, 配列そのものを操作するよりも便利な利用法が存在する なお, 文字列リテラルは, その文字列が格納されている領域の先頭アドレスを表すので,

More information

Microsoft Word - Writing Windows Installer's DLL.doc

Microsoft Word - Writing Windows Installer's DLL.doc Windows Installer 形式 DLL ファイルの作成 この文書は Acresso Software の次の文書を元に記載しています http://www.acresso.com/webdocuments/pdf/dlls-for for-ipwi.pdf 検証したバージョン : InstallShield 2009 Premier Edition 概要 InstallShield 2009

More information

目次 1. はじめに 本文書の目的 前提条件 略語 事前準備 ホスト名の名前解決 Linux 版パッケージ システム要件 ソフトウェア要件 パッケージ構成

目次 1. はじめに 本文書の目的 前提条件 略語 事前準備 ホスト名の名前解決 Linux 版パッケージ システム要件 ソフトウェア要件 パッケージ構成 OpenAM 11 インストールガイド オープンソース ソリューション テクノロジ ( 株 ) 作成日 : 更新日 : 2013 年 12 月 26 日 2018 年 10 月 15 日 リビジョン : 1.7 目次 1. はじめに 1 1.1 本文書の目的...1 1.2 前提条件...1 1.3 略語...1 2. 事前準備 2 2.1 ホスト名の名前解決...2 3. Linux 版パッケージ

More information

C 言語の式と文 C 言語の文 ( 関数の呼び出し ) printf("hello, n"); 式 a a+4 a++ a = 7 関数名関数の引数セミコロン 3 < a "hello" printf("hello") 関数の引数は () で囲み, 中に式を書く. 文 ( 式文 ) は

C 言語の式と文 C 言語の文 ( 関数の呼び出し ) printf(hello, n); 式 a a+4 a++ a = 7 関数名関数の引数セミコロン 3 < a hello printf(hello) 関数の引数は () で囲み, 中に式を書く. 文 ( 式文 ) は C 言語復習 C 言語の基礎 来週もこの資料を持参してください C 言語, ソースファイルの作成, コンパイル, 実行 1 C 言語 C 言語プログラミングの手順 とは, 計算機を動かす手順を記述したもの. 計算機に命令を与えて動かすには を作成する ことになる. C 言語はプログラミング言語の 1 個 手続き型言語に分類される. C/C++ は非常に多くの場面で使われる言語 C++ は C 言語をオブジェクト指向に拡張したもの

More information

SSL セッション ツール バージ ョ ン 1.6.2

SSL セッション ツール バージ ョ ン 1.6.2 バージョン 1.6.2 初版発行日 :3/1/16 は Cisco SSL アプライアンスによって生成されたエクスポート済みセッションログ内の SSL セッションログ情報を解析するために使用します このガイドでは SSL セッションツールとそのインストール方法について概要を説明します このツールでは バイナリの SSL セッションログファイルを解析したり 分類されたフィールドでフィルタリングしたり

More information

フローチャート自動生成ツール yflowgen の使い方 目次 1 はじめに 本ツールの機能 yflowgen.exe の使い方 yflowgen.exe の実行方法 制限事項 生成したファイル (gml ファイル形式 ) の開

フローチャート自動生成ツール yflowgen の使い方 目次 1 はじめに 本ツールの機能 yflowgen.exe の使い方 yflowgen.exe の実行方法 制限事項 生成したファイル (gml ファイル形式 ) の開 フローチャート自動生成ツール yflowgen の使い方 目次 1 はじめに...2 2 本ツールの機能...2 3 yflowgen.exe の使い方...3 3.1 yflowgen.exe の実行方法...3 3.2 制限事項...3 3.3 生成したファイル (gml ファイル形式 ) の開き方...4 3.3.1 yed Graph Editor を使って開く...4 3.3.2 yed

More information

演習に必要な

演習に必要な 演習に必要な ソフトウェアの インストール手順 電気通信大学 ウェブシステムデザインプログラム Version 5 contact@websys.edu.uec.ac.jp 目次 はじめに...2 sudo について...2 ファイアウォールの設定...2 パッケージ リポジトリの追加...3 Wireshark のインストール...4 PostgreSQL のインストール...5 SQLite のインストール...6

More information

kiso2-06.key

kiso2-06.key 座席指定があります Linux を起動して下さい 第6回 計算機基礎実習II 計算機基礎実習II 2018 のウェブページか ら 以下の課題に自力で取り組んで下さい 第5回の復習課題(rev05) 第6回の基本課題(base06) 第5回課題の回答例 ex05-2.c 1. キーボードから整数値 a を入力すると a*a*a の値を出力することを繰り返すプログラムを作成しなさい 2. ただし 入力された

More information

PCL6115-EV 取扱説明書

PCL6115-EV 取扱説明書 PCL6115 スターターキット 取扱説明書モーションパターンビルダーサンプルプロジェクト 目次 1. はじめに... 1 1-1. 動作環境... 2 1-2. 動作モード... 2 1-3. 使用したプログラミング言語... 2 1-4. 注意... 2 2. サンプルプロジェクトの構成... 3 2-1. フォルダ構成... 3 2-2. ファイル構成... 3 3. デバイスドライバのインストール...

More information

実行形式の作成と構成管理 2012 年 7 月 8 日 海谷治彦 1

実行形式の作成と構成管理 2012 年 7 月 8 日 海谷治彦 1 実行形式の作成と構成管理 2012 年 7 月 8 日 海谷治彦 1 動機付け 大多数の人はプログラムは実行するだけ. プログラム単体で実行できないと困る. 毎回,Eclipse を立ち上げていては困る. 実行可能ファイルの作成 Java に限らず通常, 多数のソースファイル, 外部ライブラリから実行ファイルは構成される. 修正毎に手作業でコンパイルするのはつらい. 開発時と実行時の環境の違い 特に外部ライブラリの配置は開発者マシンと利用者のマシンとでは異なる場合が多い.

More information

ブート領域、フラッシュ領域の分割方法 RL78ファミリ用Cコンパイラ CC-RL

ブート領域、フラッシュ領域の分割方法 RL78ファミリ用Cコンパイラ CC-RL ブート領域 フラッシュ領域の分割方法 RL78 ファミリ用 C コンパイラ CC-RL 2016 年 10 月 5 日 Rev.2.00 ソフトウエア事業部 ソフトウエア技術部 ルネサスシステムデザイン株式会社 R20UT3475JJ0200 アジェンダ はじめにページ 3 概要ページ 4 ブート領域 フラッシュ領域共通ページ 12 ブート領域ページ 19 フラッシュ領域ページ 38 デバッグツールページ

More information

Microsoft PowerPoint - 10.ppt [互換モード]

Microsoft PowerPoint - 10.ppt [互換モード] 第 10 回関数と再帰 1 今回の目標 再帰的な考え方に慣れる C 言語における再帰関数を理解する 階乗を求める再帰的な関数を作成し その関数を利用するプログラムを作成する 2 階乗 n! の 2 つの数学的表現 (1) 繰り返しによる表現 n! = 1 2 i n n = ii i= 1 ( n 1 のとき ) ( なお 0!=1) (2) 漸化式による表現 n! = 1 n = 0のとき n (

More information

関数の呼び出し ( 選択ソート ) 選択ソートのプログラム (findminvalue, findandreplace ができているとする ) #include <stdiu.h> #define InFile "data.txt" #define OutFile "surted.txt" #def

関数の呼び出し ( 選択ソート ) 選択ソートのプログラム (findminvalue, findandreplace ができているとする ) #include <stdiu.h> #define InFile data.txt #define OutFile surted.txt #def C プログラミング演習 1( 再 ) 6 講義では C プログラミングの基本を学び 演習では やや実践的なプログラミングを通して学ぶ 関数の呼び出し ( 選択ソート ) 選択ソートのプログラム (findminvalue, findandreplace ができているとする ) #include #define InFile "data.txt" #define OutFile "surted.txt"

More information

Prog1_12th

Prog1_12th 2013 年 7 月 4 日 ( 木 ) 実施 ファイル処理ファイルとはファイル (file) は日常用語では紙などを綴じたものを表すが, コンピュータ用語ではデータの集合体を指す言葉である ファイルは例えば, 文書ファイルやプログラムファイルのように, 用途によって分類されることもあれば, また, テキストファイルやバイナリファイルのように, ファイルの作り方によって分類されることもある なお,

More information

第2回講義:まとめ

第2回講義:まとめ C 言語のキーポイント 5=x は NG, x=y=6 は OK. (x=y)=6 は? *ptr=7 は? int x; printf( %d, x) は scanf ( %d, x) は 非 0 が真 0 が偽 for 文は while 文で書き直せる 逆も真 配列は 0- オリジン 関数呼び出しでは 仮引数が実引数で初期化される 式を評価するとき副作用を起こす演算子は ( 複合 ) 代入演算子

More information

PGRelief C/C++ 強化ポイント説明書

PGRelief C/C++ 強化ポイント説明書 PGRelief C/C++ 強化ポイント説明書 1. 最新バージョンの強化ポイント (2017autumn 2018) 1) CERT Cコーディングスタンダードの適合性チェックを追加 CERTオプションの購入が必要 2) 指摘メッセージを16 個追加 ( うち15 個はCERTオプション用 ) 3) Visual C++ 2015 の資産に対応 2. 過去バージョンの強化ポイント 2.1. 強化ポイント

More information

Microsoft PowerPoint ppt

Microsoft PowerPoint ppt 基礎演習 3 C 言語の基礎 (5) 第 05 回 (20 年 07 月 07 日 ) メモリとポインタの概念 ビットとバイト 計算機内部では データは2 進数で保存している 計算機は メモリにデータを蓄えている bit 1bit 0 もしくは 1 のどちらかを保存 byte 1byte 1bitが8つ集まっている byte が メモリの基本単位として使用される メモリとアドレス メモリは 1byte

More information