MobaXterm は一応、ssh/mosh クライアント兼ターミナルエミュレーターと呼ぶべき感じのソフトウェアです。
MobaXtermのgcc-g++パッケージを選択して追加インストールすると、Cのプログラムのコンパイルと実行は可能です。
Edu2Web Press
Visual Studio Code(以下”VSCode”とする)とは、Windows OSや.NET Framerorkの開発元であるMicrosoft社が開発したオープンソースのテキストエディタだ。マルチプラットフォームなのでWindows、MacOS、Linuxのいずれの環境にもインストールできる。
プログラムの開発はIDEで行われるケースは多いが、機能が豊富なIDEは起動や動作が遅くなってしまうケースもよくあることだ。もっとわかりやすく言うと、「もっさりしていてめんどくさい」だ。
一般的なテキストエディタではコードを入力して保存するだけだが、VSCodeではプログラムのデバッグを行うことができる。デバッグする言語によって拡張機能のインストールが別途必要ではあるが、動作の重くなりがちなIDEを使わずにデバッグできる点はエンジニアにとって嬉しい機能のひとつだと言える。
C/C++やC#、VisualBasicなどMicrosoft社の開発言語はもちろん、JavaやPython、SQL、JSONなど多くの言語をサポートしている。サポートされている言語は「シンタックスハイライト」と呼ばれる機能でプログラム言語の構文がハイライト表示されるため、見やすく、また書きやすくプログラミングできる。
テキストエディタでありながらIDEなどに備わっている自動補完(Intellisense)機能がある点は非常にポイントが高いと言える。標準では対応している言語は限られてはいるが、拡張機能で準備されている言語もあるのでチェックしておくようにしよう。
プログラムのバージョン管理システムとして有名なGitとの連携機能が実装されており、Gitリポジトリにプッシュ、プルを行うことが可能だ。あらかじめGitのインストールが必要ではあるが、Gitでバージョン管理を行っているプロジェクトであれば作業効率のアップが期待できる。
> gcc hello.c -o hello.exe
参考:
出題内容 | ||
定数 | 浮動小数点定数 | 指数形式を許す 浮動小数点接尾語はf、l、F、Lのいずれか |
---|---|---|
整数定数 | 整数接尾語として長語接尾語(l、L)を含む | |
文字定数 | 拡張表記は8進拡張表記、16進拡張表記を含む | |
文字列リテラル | 拡張表記は8進拡張表記、16進拡張表記を含む | |
列挙定数 | ||
演算子 | ビット演算子、条件演算子、代入演算子、キャスト演算子、ポインタ/アドレス演算子、構造体演算子、sizeof演算子 | |
宣言指定子 | void、short、long、float、double、構造体共用体指定子(struct、union)、列挙型指定子(enum)、型修飾子(const)、typedef | |
変数 | 上記型指定子の単純変数、配列 | |
外部定義 | ||
プリプロセッサ機能 | ファイルの包含 | |
ライブラリ関数 |
|
|
|
||
|
||
|
||
その他 |
|
※3級出題範囲含む
注)各級とも日本工業規格 (JIS) X3010 で出題・解答する。
http://www.sikaku.gr.jp/js/cp/
C言語は、記述の自由度が高く、使用可能なプラットホームが多いなど、使用できる場面が多いことから、現在最も広く普及しているプログラミング言語です。このC言語のプログラミング能力の測定を目的に、1992年より開始されたのがサーティファイ 情報処理能力認定委員会が主催する「C言語プログラミング能力認定試験」です。
保有スキルのレベルに合わせた3段階の認定基準を設けることにより、これから新たにプログラミングの学習を始める方から、現在プログラマやシステム・エンジニアとして既に活躍されている高度IT技術者の方まで、幅広い皆様から受験いただいています。
「C言語プログラミング能力認定試験」は、これからプログラミングを学び始める方を対象とした「3級」から、プログラマやシステム・エンジニアとして活躍されている方の保有スキルを客観的にアピールできる「1級」まで、幅広いスキルを測定しています。
特に「1級」では、実際にPCを使用して、プログラムの仕様変更やこれに伴うプログラミング作成(コーディング・コンパイル・デバッグ)を行う、極めて実践的な資格・検定試験として、IT業界でも高く評価されています。
「C言語プログラミング能力認定試験」の「2級」及び「3級」は、経済産業省認定「基本情報技術者試験」の「午後問題」の出題形式も意識して作成しています。そのため、「基本情報技術者試験」の学習と連動した活用も多く見られます。保有スキルのレベルに応じた級位取得を目標としていただくことで、C言語のプログラミング能力を高めるだけではなく、「基本情報技術者試験」の合格にもつなげていくことができます。
C言語プログラミング能力認定試験
(C-Language Programming Skills Qualification Test)
C言語を駆使して応用プログラム(言語処理系、ユーティリティなど)を作成する能力を認定します。
一級 | C言語を駆使し、応用プログラム(言語処理系、ユーティリティなど)が作成できる能力を有する。また使用しているOSについて理解をしている。 |
二級 | 小規模のプログラム(500行程度)が適切に(理路整然、簡潔、正しく、速く)書ける。また各種基本アルゴリズムを理解している。 |
三級 | C言語の概念を理解し、簡単なプログラムが書ける。 |
出題内容 | ||
定数 | 整数定数 | 10進定数、8進定数、16進定数 整数接尾語は符号無し接尾語(u、U)のみ |
---|---|---|
文字定数 | ワイド文字定数(L’c文字の列’)を除く 拡張表記は単純拡張表記のみ |
|
文字列リテラル | ワイド文字列リテラル(L”s文字の列”)を除く 拡張表記は単純拡張表記のみ |
|
演算子 | 算術演算子、インクリメント演算子、デクリメント演算子、(算術の)代入演算子、関係演算子、等値演算子、論理関係演算子、括弧演算子、コンマ演算子 | |
型指定子 | char、int、unsigned、signed | |
変数 |
|
|
基本制御文 | break、continue、do、for、if、return、switch、while | |
プリプロセッサ機能 | #define、#include | |
ライブラリ関数 |
|
|
|
||
その他 | Cの歴史と特徴 |
現在使用するC言語教科書には、文字操作関数<ctype.h>の内容について不足するので、
[amazonjs asin=”479815038X” locale=”JP” ]
下記のサイトを参考にしてください。
C言語の最小限の開発環境を作る手順
Atomという新世代のエディター(Windows、Mac OS X、Linux対応)をインストールしてください。
LinuxでのC言語開発環境について解説しています。「GNU Compiler Collection」が一般的です。
それでは gcc をインストールしていきます。
Debianでは、apt-getコマンドを使ってgccをインストールします。
# apt-get install gcc
UbuntuはDebianベースのディストリビューションなので、Debianと同じようにa apt-getコマンドを使います。ただ、Ubuntuにはrootユーザーという概念がないので、sudoコマンドでインストールしていきます。
$ sudo apt-get install gcc
CentOSでは、yumコマンドを使ってgccをインストールします。
# yum install gcc
以上で、コンパイラ(gcc)のインストールは完了です。
不要です。
C言語プログラムのファイル名を「hello.c」というファイルを作成します。ファイルの中身は「Hello, World!」という文字列を出力するプログラムです。
hello.cをコンパイルします。
$ gcc hello.c
エラーが表示されなければ、OKです。
実行します。
$ ./a.out Hello, World
無事に実行できましたね。
WindowsでgccをインストールするにはMinGWを利用した、C言語の最小限の開発環境を作る手順
Atom、VSCodeなど新世代のエディター(Windows、Mac OS X、Linux対応)をインストールしてください。
C言語コンパイラって幾つかありますが、visual studioはファイルサイズがデカいので却下です。gccのインストールをオススメします。gccはMacでもLinuxでもWindowsでも使えます。
システム | mingw-jp | Visual Studio .net | Borland C++ Builder |
---|---|---|---|
コンパイラ名 | gcc | cl | bcc32 |
オブジェクトファイルの拡張子 | .o | .obj | .obj |
実行ファイル名指定 | -o ファイル名 | -o ファイル名 | -eファイル名 |
make コマンド | mingw32-make | nmake | make |
依存ファイルマクロ | $^ | $** | $** |
WindowsでgccをインストールするにはMinGWというソフトを使う必要があります。
MinGW | Minimalist GNU for Windows
左のメニュー画面で「Basic Setup」を選択し、
を選んで、右クリックで「Mark for Installation」を選択します。
選び終わったら、上の「Installation」メニューから「Apply Changes」を選択すればインストールが始まります。
インストールが始まると、先ほど選択したパッケージがこのように変わります。
これでGCCが使えるようになりました。
事前にgcc.exeの場所を探しておいてください。
MinGWをインストールする際に設定を変更していなければ C:MinGWbin
にあるはずです。
;C:¥MinGW¥bin
を追記;
」を必ず付けてくださいユーザー環境変数とシステム環境変数の違い
お好きな方をお使いください。
コマンドプロンプトで gcc --help
と打ってみてください。
↓こんな感じのものが出てればgccが正常に使える状態です。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
> gcc —help
Usage: gcc [options] file...
Options:
–pass–exit–codes Exit with highest error code from a phase
—help Display this information
—target–help Display target specific command line options
—help={common|optimizers|params|target|warnings|[^]{joined|separate|undocumented}}[,...]
Display specific types of command line options
(Use ‘-v –help’ to display command line options of sub–processes)
—version Display compiler version information
–dumpspecs Display all of the built in spec strings
–dumpversion Display the version of the compiler
–dumpmachine Display the compiler‘s target processor
-print-search-dirs Display the directories in the compiler’s search path
(※以下省略)
|
バージョンの確認
> gcc -v Using built-in specs. COLLECT_GCC=gcc COLLECT_LTO_WRAPPER=c:/mingw/bin/../libexec/gcc/mingw32/5.3.0/lto-wrapper.exe Target: mingw32 Configured with: ../src/gcc-5.3.0/configure --build=x86_64-pc-linux-gnu --host=mingw32 --prefix=/mingw --disable-win32-registry --target=mingw32 --with-arch=i586 --enable-languages=c,c++,objc,obj-c++,fortran,ada --enable-static --enable-shared --enable-threads=posix --with-dwarf2 --disable-sjlj-exceptions --enable-version-specific-runtime-libs --enable-libstdcxx-debug --with-tune=generic --enable-libgomp --disable-libvtv --enable-nls Thread model: posix gcc version 5.3.0 (GCC)
C言語プログラムのファイル名を「hello.c」というファイルを作成します。ファイルの中身は「Hello, World!」という文字列を出力するプログラムです。
以下のコマンドを打ってみてください。
> gcc hello.c -o hello.exe
そしたら hello.exe
が作られています。
コマンドプロンプトで実行ファイル名を入力してEnterキーを押すだけです。
コマンドプロンプトで、「hello.exe」を実行します。
> hello.exe Hello, World
このように「Hello, World」という文字列が出力されれば、OKです。
実行ファイルを指定した場合、指定したファイルを実行してください。
新学期に、ノートPCを考えることがありませんか?
WindowsのノートPCか、MacのノートPCか、悩むかもしれません。
ここはノートPCはMacが良いと思う理由を列挙する。
Macbookに、Boot Campというソフトウェアある。
Boot Camp(ブートキャンプ)は、アップルにより開発・配布されているソフトウェア。Intel Macにおいて、Microsoft Windowsの利用を可能とする。
OS X(オーエス テン)は、アップルが開発・販売する、Macbook コンピュータ用の現行オペレーティングシステムである。BSD UNIX ベースで新たに Mac OS X(マック オーエス テン)が作られた。
MacbookにUNIX, Apache, PHP内蔵のため、活用範囲大
Linux(リナックス)は、UnixライクなOSカーネルであるLinuxカーネル、およびそれをカーネルとして周辺を整備したシステム。
iPhoneのアプリの開発は、Apple社のMac PCが必須です。
Macbookでも Pro でも Air でもトラックパッドの性能というか動きが素晴らしすぎるんです。トラックパッドとはWindowsでいうタッチパッドのことなんですが、一度使うと抜け出せない程使いやすいんです!
先日ヨドバシカメラへ行った際に、hp・Dell・NEC・VAIO・Surface・Lenovo機を触ってきたのですが、それらブランドノートPCの多くはタッチパッドに若干のひっかかりがあり、ぎこちなさは否めなかったです。LenovoのThinkPadとSurfaceはなかなかよかったので、もしもWindowsノートPCを使うなら、Surfaceは膝の上でタイピングできないですしThinkPadかな?と感じました。
これを読んでいるWindowsだけのユーザーさんは是非店頭でMacbookを触ってもらえばと思います。きっと惚れてまうよ(笑)
同価格帯のWindowsノートPCと比べて、Retina画面ではないMacbook Airですら画面の綺麗さが違います。雲泥の差です。持ち運び用の小さい画面ですから、綺麗=見やすいにこしたことはありません。作業しやすいですよ。
スリープ復帰の速さとスリープ中のバッテリー消費管理はMacbookの方が断然上だと感じます。Macbookは画面を持ち上げたその時から普通に作業開始できます。また、Macbookはスリープしながら何日も放置できます。安いWindowsノートPCなんかですと、スリープしているのにもかかわらず恐ろしくバッテリーが減っていることもしばしば・・・。
MacはWindowsに無いキーがあったり、若干配置が違いますが、それは慣れてしまえばどうでも良いこと。それらを差し引いても、あのキーボードの打ち易さはハンパないです。機体を膝に乗っけてタイピングしても超快適な打ち心地です。タイプしていると気持ちが良いんです。外出して作業するときにはWindows ノートよりもタイピングがはかどることは間違いないです。一応WindowsノートだとLenovoのThinkPad x250はなかなか打ちやすく、さすがビジネスモデルだと思いました。
Windows ノートの画面はほぼ「16:9」で、ワイド画面の幅です。それに比べ、Macbookの画面は「16:10」で縦幅が若干長いのです。例をだすと、Macbook Airの画面解像度は「1440×900」ですが、Windowsノートだと「1440x810」となります(実際にこのサイズのWindowsノートはありませんがあくまでも比率の問題)。この差は結構重要で、見やすさと作業効率に若干の影響を与えます。
外でMacbookを広げている人を見ると、やっぱりカッコイイと思う自分がいます(笑)冒頭で書きましたが、1人で引きこもって作業している時には特にそういうものは気にせず使いやすさ重視なのですが、外ではやはりMacbookがカッコイイのですよ!!これはWindowsノートPCには覆せない現実です。
Macbookは細部まで本当に丁寧に作られていますし、デザインに無駄がなというのはこういうことだな・・・と自分のMacbook Airや店頭のその他Mac機体たちをみていてつくづくそう思います。
MacBookで、C言語開発環境の構築
Macに最初から入っている「テキストエディット」とMacに最初から入っている「ターミナル」から入門できますが、無料で多機能Atom、VSCodeを使えこなせるとより本格的にC言語開発できます。
Xcode またはXcode Command Line Toolsを入れる。
MacBookでは、Xcodeの開発環境を入れるは普通だか、サイズが大きい。iPhoneのアプリ開発環境も一気に揃う利点があります。
Xcode Command Line Toolsだけ入れるとする。サイズの節約になります。
# xcode-select –install
上記コマンド打って「インストール」を選択するだけでいい!
chen-no-air:bin chen$ gcc --version Configured with: --prefix=/Library/Developer/CommandLineTools/usr --with-gxx-include-dir=/usr/include/c++/4.2.1 Apple LLVM version 7.3.0 (clang-703.0.29) Target: x86_64-apple-darwin15.4.0 Thread model: posix InstalledDir: /Library/Developer/CommandLineTools/usr/bin chen-no-air:bin chen$ chen-no-air:bin chen$ git --version git version 2.6.4 (Apple Git-63) chen-no-air:bin chen$
Macに最初から入っている「テキストエディット」, 「ターミナル」で使えるVimや無料で多機能Atom、VSCodeなどのテキストエディタを使って、以下のプログラムをhello.cというファイル名で作成します。作成したファイルはデスクトップに保存します。
#include<stdio.h> int main() { printf("Hello, World\n"); return 0; }
次に「Finder」を起動し、「アプリケーション」→「ユーティリティ」から「ターミナル」を起動します。
cdコマンドで作業ディレクトリをデスクトップに移動します。
$ cd ~/Desktop/
gccコマンドで、実行ファイルを指定して、hello.cをコンパイルします。
$ gcc hello.c -o hello
そしたら hello
が作られています。
指定した実行ファイルを入力し、プログラムを実行します。
$ ./hello Hello, World
無事に実行できました。
正しいhello.c。カーソルは位置を注意してください。Pは5:5の位置にある。
コンパイルと実行する様子
初めてCのプログラミングは なかなかうまく行かないかも知れない。
ここではHello World プログラムの典型的な間違い例をいくつか紹介する。
右の引用符は全角引用符「”」になっている
全角スペースが用いられている、これはなかなか探しにくい。
カーソルは位置を注意してください。Pは5:3の位置にある。
(半角のスペースなら、Pは5:5の位置にある。)
セミコロン「;」の付け忘れである。