プログラミング メモ memo.txt

一度考えたコードを忘れるのはもったいないので、メモとして残していきます。現在、JavaとC++とVBAを勉強しているので、そこらへん書きます。

C++ 入力と出力。簡単な演算まで

f:id:rkprog:20151024010640p:plain

昨日、開発環境を整えたので今日は入力と出力から

入力と出力

出力は昨日もやってしまったのだが、cout>>を使うらしい
入力はcin<<らしい

なんて読むのかはよくわからない

cout>>"出力対象">>endl; //出力

cin<<"キーボードからの入力対象のオブジェクト";  //入力

実際にやってみると



ソースコード

#include<iostream>
#include<string>
using namespace std;

int main()
{
	string input;
	cout << "文字列を入力してください。"<<endl;
	cin >> input;
	cout << input << "と入力されました。" << endl;
		return 0;
}

実行結果

f:id:rkprog:20151021112931p:plain

そこそこ上手くいったかな?


ところで、昨日からstring型を使っているのだけど

char型でポインタを使う方法をあるらしい。

こんな感じ

char* ch = "hello";

どっちの方が普通かはわからないけど、stringは別で#includeが必要になるからなあ

とりあえず、同じ方法でinputが受け付けられるかやってみたら、エラーが出たので

この方法で文字列リテラルを受け付けるのは厳しいのかな?

同じようにint型の入力も試してみる

#include<iostream>
#include<string>
using namespace std;

int main()
{
	int a, b;
	cout << "a-->" << endl;cin >> a;
	cout << "b-->" << endl;cin >> b;
	cout << "a+b=" << a + b << endl;
		return 0;
}


実行結果

f:id:rkprog:20151021113709p:plain


上手くいってるよう。
ちなみに、int型にstring型を渡すと

f:id:rkprog:20151021113807p:plain

と挙動不審になったけど動いた。

この動くのは怖いですね・・・

ついでにint型の配列の入力と出力もやってみた

ソースコード

#include<iostream>
#include<string>
using namespace std;

int main()
{
	int a[5];
	for (int i = 0; i < 5; i++)
	{
		cin >> a[i];
	}
	for (int i = 0; i < 5; i++) {
		cout << a[i] << endl;
	}

	return 0;
}


実行結果

f:id:rkprog:20151021114553p:plain


エラー出て簡単にしまくったけど

Javaみたいに変数nを読み込んでn個の配列は生成できないのかな?

それとArrays.toString()のような簡単に配列を出力する方法も調べたいな。