LoginSignup
0

More than 3 years have passed since last update.

c++始めてみた:Ubuntuも環境構築してみた&初心者に優しいEditorとは?個人ノート1.6

Last updated at Posted at 2019-08-16

Ubuntuも環境構築してみた

環境

Ubuntu 18.04.3 LTS
gcc version 7.4.0 (Ubuntu 7.4.0-1ubuntu1~18.04.1)
g++ version 7.4.0 (Ubuntu 7.4.0-1ubuntu1~18.04.1)
GNU Make 4.1

参考資料 (help.ubuntu.com)

上の記事に従ってbuild-essential( gccとmake )を
一瞬でインストール出来ました。

実装してみる

とりあえず, pico で下のコードを書いて

hello_w.cpp
#include <bits/stdc++.h>
using namespace std;

int main() {
  cout << "Hello World!" << endl;
}

下の様に指示すると

gcc hello_w.cpp

エラーが

undefined reference to 'std::cout'

stackoverflowを見てみると、gccだとstd::outがby defaultではないらしい

なので

g++ hello_w.cpp

するとエラー無くいけました

GCC and Make Compiling, Linking and Building C/C++ Applications

上のサイトの解説より
コンパイルした後に出来たファイル「a.out」を
下の様に指示すると

chmod a+x a.out
./a.out

ちゃんと実行出来ました!

Hello World!

追記

GCC and Make Compiling, Linking and Building C/C++ Applications

によると
GCC = GNU C compiler
G++ = GNU C++ compiler
なので明らかにg++の方が正しい選択でした
なんでc++を習っているのにcを使おうとしていたのか・・・
ちゃんと最初から読むべきでした・・・( ´д`ll)

他にもやり方があり、下の指示でも実行出来ました。

g++ -o hello_w hello_w.cpp
chmod a+x hello_w
./hello_w

追記2

g++ --help

上の関数いいですね、g++の使い方が分かりやすく解説してあります。

さてさて問題の Editor for Beginner

エディタ選びは物凄く悩みます。
(Pythonは簡単なコードしか書かないのでSpyderで満足しています)

なので
プロ(エンジニア)に扱いやすいエディタではなくても
初心者に優しい(扱い易い)エディタでいいのかな?と思いました。

初心者に優しいエディタとは?

先ず、MacとUbuntuの両刀使いなので、両方に対応したエディタにしたいですね。
後は、Python(Anaconda Navigator内)もやるので、この際Pythonにも対応したエディタ。
その他にも、初心者を甘やかしてくれる単純、便利機能がついているとGood!
そして、無料。

...ん?

よくよく考えてみると、Anaconda Navigator内に

  • Jupyer Notebook
  • Spyder
  • VS code ←←←!!!
  • Glueviz
  • RStduio
  • Orange 3

VS code あるじゃん!!!と気づいてしまいました

それなら初心者は
Anaconda上で
- Spyder(Python)
- VScode(Python/C++)

でいいのでは?

直ぐ始められるし操作も簡単そう

そこから慣れていって、他のエディタに手を出すという具合で

追記3

一応調べてみましたフリーエディタ群

参考資料
- Wiki エディタ比較

40個以上あり、何が何だか・・・

やはり初心者(Anacondaでプログラミングを始めた方)はVScodeから始めればいいのかな?という感じです。

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0