プログラミング初心者の学生に「自習してね」と簡単に言うために,簡単にwebブラウザでプログラムを書いて実行できる環境が欲しい.いろいろあります.
高度なonline開発環境もありますが,それは別物.
ここではユーザ登録などの面倒な手続きがなく,すぐにコードを書いて実行できるサイトを紹介します.
ただし,書いて実行した自分のコードが,すぐに全世界に公開され共有される場合もあるので,それを理解してからこれらのサイトを使ってください
Coding Ground at tutorialspoint
http://www.tutorialspoint.com/compile_c_online.php
- 特徴
- 多数の言語あり(C, C++, Java, Python, latex, etc...)
- エディタ,shターミナル,ディレクトリブラウザ
- コンパイルと実行が,それぞれボタン1つ(ただし,単に
gcc -o main *.c
と./main
がターミナルで実行されるだけ:C言語の場合.Project->Compile optionsで変更可能) - ターミナルでの入出力(stdin,stdout)が可能.キーボード入力OK.
- ファイルを作ればファイル入出力も可能
- 複数ファイルのコンパイルもOK
- プロジェクトをダウンロード可能(tar.gz)
- 短縮URLで共有可能
- ユーザ登録なし,すぐに実行できる
- 欠点
- 保存できない(ユーザ登録なしなので)
- アップロードできない(機能はあるが動作しない).エディタにcopy&pasteはOK
CodingGroundでプロジェクトをインポートする
メニューからアップロードやインポートは,エラーが出たり保存されなかったりして,(現在のところ)機能しない.ダウンロードやエクスポートは可能.
以下のターミナルコマンドを使うと,インポート・アップロードできる.
- wget
- git:参考 tutorialspoint.comでgitを使う
- etc.
ただしブラウザをリロードすると全部消えてしまうので注意.
CodeChef
- 特徴
- エディタ
- Runボタンでコンパイル&実行
- stdinは,テキストボックス内容
- 多数の言語あり(C, C++, Java, Python, etc...)
- ユーザ登録なし,すぐに実行できる
- ユーザ登録すると保存できる(?)
- ファイルをアップロードできる
- ファイルとしてダウンロードできる
- 欠点
- 単一ファイルのみ.複数ファイルはNG
ideone
- 特徴
- エディタ
- Runボタンでコンパイル&実行
- stdinは,テキストボックス内容
- 多数の言語あり(C, C++, Java, Python, latex, etc...)
- 短縮URLで共有可能
- ユーザ登録なし,すぐに実行できる
- ユーザ登録すると保存できる(?)
- 欠点
- アップロードできない.エディタにcopy&pasteはOK
- 単一ファイルのみ.複数ファイルはNG
paiza.io
- 特徴
- 多数の言語あり(C, C++, Java, Python, latex, etc...)
- 日本語
- エディタ
- Runボタンでコンパイル&実行
- stdinは,テキストボックス内容
- ファイルを作ればファイル入出力も可能
- 複数ファイルのコンパイルもOK
- 埋め込みURLで共有可能
- ユーザ登録なし,すぐに実行できる
- ユーザ登録すると保存できる(?)
- ファイルアップロード可(画面上のファイルタブ付近へ,ローカルファイルをdrag&drop)
- 欠点
-
アップロードできない.エディタにcopy&pasteはOKできました
-
runnable
- 特徴
- エディタ,shターミナル,ディレクトリブラウザ
- save and run ボタンでコンパイル&実行
- ターミナルでの入出力(stdin,stdout)が可能
- ファイルを作ればファイル入出力も可能
- 多数の言語あり(C++, Java, Python, latex, etc...):C言語はない
- 複数ファイルもOK
- プロジェクトをダウンロード可能(tar.gz)
- 短縮URLで共有可能
- ユーザ登録なし,すぐに実行できる
- ユーザ登録すると保存できる(?)
- 欠点
- アップロードできない.エディタにcopy&pasteはOK
C++ shell
- 特徴
- エディタ
- Runボタンでコンパイル&実行
- stdinは,ターミナル的な対話的キーボード入力と,テキストボックス内容から選べる
- コンパイルオプションがいくつか選べる(C++98/11/14など)
- 短縮URLで共有可能
- ユーザ登録なし,すぐに実行できる
- 欠点
- C++のみ
- 保存できない(ユーザ登録なしなので)
- アップロードできない.エディタにcopy&pasteはOK
- 単一ファイルのみ.複数ファイルはNG
Wandbox
ソースコード: https://github.com/melpon/wandbox
- 特徴
- エディタ
- Runボタンでコンパイル&実行
- 過去の結果が別々のタブに保存される
- stdinは,テキストボックス内容
- ファイルを作ればファイル入出力も可能
- 複数ファイルのコンパイルもOK(extra optionでファイルを指定)
- 多数の言語あり(C, C++, Java, Python, etc...)
- 各言語のバージョンを選べる(C/C++ならgcc, g++, clangのバージョンを選べる)
- C/C++ならboostを利用できる(boostのバージョンも選べる)
- キーバインドをvim,emacsなどにできる
- URLで共有可能
- ユーザ登録なし,すぐに実行できる
- githubにコードがあるので,自分のサーバで運営可能
- 欠点
- アップロードできない.エディタにcopy&pasteはOK
repl.it
- 特徴
- エディタ
- Runボタンでコンパイル&実行
- stdinは,キーボード入力とテキストボックス内容
- 多数の言語あり(C, C++, Java, Python, etc...)
- 短縮・埋め込みURLで共有可能
- ユーザ登録なし,すぐに実行できる
- 欠点
- アップロードできない.エディタにcopy&pasteはOK
- 単一ファイルのみ.複数ファイルはNG
jdoodle
https://www.jdoodle.com/c-online-compiler
- 特徴
- エディタ
- Executeボタンでコンパイル&実行
- stdinはテキストボックス内容
- 多数の言語あり(C, C++, Java, Python, etc...)
- ユーザ登録なし,すぐに実行できる
- real-time collaboration機能あり(ログイン必要)
- 欠点
- アップロードできない.エディタにcopy&pasteはOK
- 単一ファイルのみ.複数ファイルはNG (?たぶん)
codepad
https://codepad.remoteinterview.io/
- 特徴
- エディタ
- Runボタンでコンパイル&実行
- stdinはテキストボックス内容
- 多数の言語あり(C, C++, Java, Python, etc...)
- ユーザ登録なし,すぐに実行できる
- 短縮URLで共有可能
- チャット機能あり(最初に名前を入力する)
- 欠点
- アップロードできない.エディタにcopy&pasteはOK
- 単一ファイルのみ.複数ファイルはNG
codepad
- 特徴
- エディタ
- submitボタンでコンパイル&実行
- 多数の言語あり(C, C++, Python, etc...)
- ユーザ登録なし,すぐに実行できる
- 短縮URLで共有可能
- 欠点
- stdinなし
- アップロードできない.エディタにcopy&pasteはOK
- 単一ファイルのみ.複数ファイルはNG
codetable
- 特徴
- エディタ
- Compile and Runボタンでコンパイル&実行
- stdinはテキストボックス内容
- 多数の言語あり(C, C++, Java, Python, etc...)
- ユーザ登録なし,すぐに実行できる
- 短縮URLで共有可能
- コーディングの様子がビデオになる! https://code.hackerearth.com/code/play/c5149a702e2049b9a0621e977a23fe10/
- コードがダウンロードできる
- 欠点
- アップロードできない.エディタにcopy&pasteはOK
- 単一ファイルのみ.複数ファイルはNG
Solo Learn
http://code.sololearn.com/#cpp
- 特徴
- エディタ
- Runボタンでコンパイル&実行
- いくつかの言語あり(C++, Java, Python, etc...)
- ユーザ登録なし,すぐに実行できる
- 欠点
- c++のみ
- stdinがない
- アップロードできない.エディタにcopy&pasteはOK
- 単一ファイルのみ.複数ファイルはNG
Geeks for Geeks IDE
http://code.geeksforgeeks.org/index.php
- 特徴
- エディタ
- Runボタンでコンパイル&実行
- stdinはテキストボックス内容
- いくつかの言語あり(C++, Java, Python, etc...)
- ユーザ登録なし,すぐに実行できる
- 欠点
- c++のみ
- アップロードできない.エディタにcopy&pasteはOK
- 単一ファイルのみ.複数ファイルはNG