Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Visual C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.12.2010, 16:04   #21
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

Цитата:
Странно, я думал, стандарт един для всех))
но не все компиляторы 100% ему соответствуют.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 12.12.2010, 16:18   #22
YourLastSong
Пользователь
 
Регистрация: 12.12.2010
Сообщений: 75
По умолчанию

В общем, получается, что функция чтения из файла не может работать с переменой типа int huge.

В результате этого я решил записывать данные в файл location [100][80][24], а вот для считывания из файла сделал массив типа int location1 [50][40][12].

Код:
int location1[50][40][12];
int huge location[100][80][24];

void load_game ()
{
	ifstream fp;
	fp.open ("save.txt", ios::in);
	fp >> n >> load_map >> local_pos >> map_locations >> start_map;
	cout << n << load_map << local_pos << map_locations << start_map;
	getch ();
	local_map_value = n;
	for (n = 0; n < 50; n++)
	for (i = 0; i < 40; i++)
	for (j = 0; j < 12; j++)
	fp >> location1[n][i][j];
	for (n = 0; n < 50; n++)
	for (i = 0; i < 40; i++)
	for (j = 0; j < 12; j++)
	location[n][i][j] = location1[n][i][j];
	for (n = 50; n < 100; n++)
	for (i = 40; i < 80; i++)
	for (j = 12; j < 24; j++)
	fp >> location1[n-50][i-40][j-12];
	for (n = 50; n < 100; n++)
	for (i = 40; i < 80; i++)
	for (j = 12; j < 24; j++)
	location[n][i][j] = location1[n-50][i-40][j-12];
	for (n = 0; n < 100; n++)
	{
	for (i = 0; i < 80; i++)
	{
	for (j = 0; j < 24; j++)
	{
	cout << location[n][i][j];
	}
	}
	}
	n = local_map_value;
	cout << "Loading complete" << endl << endl << "Press any key to quit";
	getch ();
}

void save_game ()
{
	ofstream fp;
	fp.open ("save.txt", ios::out);
	fp << n << " " << load_map << " " << local_pos << " " << map_locations << " " << start_map << " ";
	for (n = 0; n < 100; n++)
	for (i = 0; i < 80; i++)
	for (j = 0; j < 24; j++)
	fp << location[n][i][j] << " ";
	location1[n-50][i-40][j-12] = location[n][i][j];
	cout << "Saving complete" << endl << endl << "Press any key to quit";
	getch ();
	exit (EXIT_SUCCESS);
}
Теперь не все элементы массива нули, однако всё же проблема осталась.

Что тут можно исправить, чтобы всё выводилось?
YourLastSong вне форума Ответить с цитированием
Старый 12.12.2010, 16:19   #23
V0id
Пользователь
 
Регистрация: 12.12.2010
Сообщений: 30
По умолчанию

Цитата:
Сообщение от Пепел Феникса Посмотреть сообщение
но не все компиляторы 100% ему соответствуют.
М.б. какие-нибудь очень старые, но лучше такими не пользоваться.
V0id вне форума Ответить с цитированием
Старый 12.12.2010, 16:32   #24
YourLastSong
Пользователь
 
Регистрация: 12.12.2010
Сообщений: 75
По умолчанию

Перезаписывать файл он будет автоматически, если такой уже существует?

И как можно реализовать удаление файла отдельной функцией?
YourLastSong вне форума Ответить с цитированием
Старый 12.12.2010, 16:33   #25
V0id
Пользователь
 
Регистрация: 12.12.2010
Сообщений: 30
По умолчанию

Цитата:
Сообщение от YourLastSong Посмотреть сообщение
Что тут можно исправить, чтобы всё выводилось?
Не знаю, вроде все правильно.
V0id вне форума Ответить с цитированием
Старый 12.12.2010, 16:39   #26
V0id
Пользователь
 
Регистрация: 12.12.2010
Сообщений: 30
По умолчанию

Цитата:
Сообщение от YourLastSong Посмотреть сообщение
Перезаписывать файл он будет автоматически, если такой уже существует?
Будет, но лучше усекай его, добавив ios::trunc.
Цитата:
И как можно реализовать удаление файла отдельной функцией?
#include <stdio.h>

remove("save.txt");
V0id вне форума Ответить с цитированием
Старый 12.12.2010, 17:02   #27
YourLastSong
Пользователь
 
Регистрация: 12.12.2010
Сообщений: 75
По умолчанию

Спасибо.

Кстати, давно уже хотел узнать - есть ли какие-либо функции для изменения заголовка окна консоли и для того, чтобы убрать мигающий курсор в консоли?
YourLastSong вне форума Ответить с цитированием
Старый 12.12.2010, 17:26   #28
Syuf
Форумчанин
 
Аватар для Syuf
 
Регистрация: 02.02.2010
Сообщений: 599
По умолчанию

Цитата:
Кстати, давно уже хотел узнать - есть ли какие-либо функции для изменения заголовка окна консоли и для того, чтобы убрать мигающий курсор в консоли?
Ну, поменять заголовок окна консоли можно так:
Код:
#include <windows.h>


void ChangeConsoleCaption(const char *new_capt);
BOOL WINAPI ChangeConsoleCaptionProc(HWND hWnd, LPARAM lParam);


int main()
{
	ChangeConsoleCaption("MyConsole");

	return 0;
}


void ChangeConsoleCaption(const char *new_capt)
{
	EnumWindows(ChangeConsoleCaptionProc, reinterpret_cast<LPARAM>(new_capt));
}

BOOL WINAPI ChangeConsoleCaptionProc(HWND hWnd, LPARAM lParam)
{
	char old_capt[1024];
	GetWindowTextA(hWnd, old_capt, 1024);

	if(strstr(old_capt, "cmd.exe"))
		SetWindowTextA(hWnd, reinterpret_cast<LPCSTR>(lParam));

	return TRUE;
}
Только это что-то с чем-то.
"Лишь то читается легко, что написано с трудом; что в час написано, то в час и позабыто."
Syuf вне форума Ответить с цитированием
Старый 12.12.2010, 17:42   #29
YourLastSong
Пользователь
 
Регистрация: 12.12.2010
Сообщений: 75
По умолчанию

Спасибо, но мне надо в борланде чтобы работало это всё именно.
YourLastSong вне форума Ответить с цитированием
Старый 30.06.2013, 23:58   #30
hazestalker
Новичок
Джуниор
 
Регистрация: 30.06.2013
Сообщений: 1
По умолчанию

тему не читал, решил заменой пути на полный
Код:
F.open("D:\\game\\noobs.txt", ios::out);
http://kvodo.ru/urok-10-1-rabota-s-t...ylami-v-c.html
hazestalker вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Чтение 2мерного массива из файла OpenId Общие вопросы C/C++ 2 29.11.2010 16:42
Чтение из массива Hottabych Общие вопросы Delphi 5 25.05.2009 20:18
Чтение двумерного массива из тектового файла ToxaRUS Общие вопросы C/C++ 3 15.04.2009 18:39
Чтение массива из текстового файла. Metil Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 0 12.01.2009 22:53
чтение из файла в два массива Frog25 Общие вопросы C/C++ 2 26.06.2008 12:15