ヘビ🐍ゲーム作る!😡
配列を循環♻️させる
今日やったこと!
- 🐍普通の配列と可変長配列vectorの違い
- 🐍vectorの宣言と初期化(ある程度の数を確保して、全部同じ値で初期化する)
- 🐍vectorへの要素の追加と、ケツ要素の削除
- 🐍vectorへの要素の挿入(先頭に要素をぶっこむ)
- 🐍それを使って、配列の要素を循環させる!
- 🐍とって、入れて、出す!
ソースコード
Listing. 1: 配列要素の循環
- "theMain.cpp"
#include <iostream> #include <cstdio> #include <vector> using std::vector; using std::cin; const int MOJI_NUM = 10; int main() { //文字型の可変長配列を10文字分確保して、'a'で初期化 vector<char> arr(10, 'a'); //%cを使って1文字ずつarrの全部の要素を表示 for (int i = 0; i < arr.size(); i++) { arr[i] = 'a' + i; printf("%c ", arr[i]); } printf("\n"); //配列のサイズと、'a'から順番に並んでる法則を使う //jの後ろにk,l,m,n,oの5文字をfor文を使って追加! for (int i = 0; i < 5; i++) { //arr.size() == 今何文字目か? arr.push_back(arr[arr.size()-1] + 1); } for (int i = 0; i < arr.size(); i++) { printf("%c ", arr[i]); //getchar();//入力待ち } //昨日習った繰り返し用ポインタでもかけるよ! //for (auto i = arr.begin(); i != arr.end(); i++) //{ // printf("%c", *i); //} printf("\n"); while (true) { char tmp = arr.back();//一番後ろをゲット(とって) arr.pop_back();//一番後ろを消す //一番前に一番後ろからとったデータを挿入(いれて) arr.insert(arr.begin(), tmp); for (auto i = arr.begin(); i != arr.end(); i++) { printf("%c", *i);//データの表示(出す) } getchar(); } return 0; }