2015-11-25 3 views
-2

Я относительно новый для программирования, так как я только начал его в школе. Я планировал сделать игру, но я не мог понять, как хранить входы данных или другие значения в памяти компьютера, а затем использовать их снова в более позднем запуске. Можно ли это сделать?Как хранить входы из программы в память?

p.s. Я использую C++, поэтому было бы здорово, если бы вы могли объяснить это с помощью C++.

+4

С переменными. – erip

+0

'int a; std :: cin >> a; ' – user463035818

+3

Вы имеете в виду выписать файл save? – BeyelerStudios

ответ

1

Поскольку вы новичок в программировании, хорошим местом для сохранения данных для последующего использования является запись данных в текстовый файл, а затем загрузка этих данных из файла при последующем запуске. Это даст вам хороший опыт ввода/вывода файлов (что полезно знать для любого языка программирования, а не только для C++). Существует хороший учебник на файл ввод/вывод здесь стоит проверить в качестве отправной точки: http://www.cplusplus.com/doc/tutorial/files/

Для основной демонстрации, скажем, вы хотите, чтобы сохранить имя и номер игрока пунктов:

#include <iostream> 
#include <string> 
#include <fstream> 

using namespace std; 
int main() { 

// player information we want to write out 
string name = "player1"; 
int points = 1234; 
int turn = 10; 

ofstream fout; // I use fout as shorthand for "File OUTput" 
fout.open("file1.txt"); // opens a file named 'file1.txt' for writing 

// write the data to the file 
fout << name << ' ' << points << ' ' << turn << endl; 

fout.close(); // don't forget to close the file output stream 

// now let's open the file to read in the data 
ifstream fin; // I use fin as shorthand for "File INput" 
fin.open("file1.txt"); 

string namereadin = ""; 
int pointsreadin = -1; 
int turnreadin = -1; 

// now let's read in the data. Since we know what order we wrote the info 
// to file in, we can read it in using that same order 
fin >> namereadin >> pointsreadin >> turnreadin; 

// now just to show that we read the input correctly, let's output it to the screen 
cout << namereadin << " " << pointsreadin << " " << turnreadin << endl; 
} 

В конечном итоге вы захотите использовать блок try-catch для обработки ошибок.