Компьютерный форум
Правила
Вернуться   Компьютерный форум > Форум программистов > Языки программирования > С/С++
Перезагрузить страницу С++ макроподстановки.
Ответ
 
Опции темы Опции просмотра
  (#1 (permalink)) Старый
Артём Фирсанов Артём Фирсанов вне форума
Member
 
Сообщений: 348
Сказал(а) спасибо: 26
Поблагодарили 5 раз(а) в 5 сообщениях
Регистрация: 19.08.2010
Unhappy С++ макроподстановки. - 08.01.2013, 14:39

Привет всем, нужна помомощь с заданием.
Используя макроподстановки (директива препроцесcора
#define) переопределить следующие операторы языка C++:
главной функции, оператор цикла do while, открытие и закрытие файла, чтение и запись вещественного числа в файл.
Всем спасибо за любой ответ.
вот что удалось накидать.
cpp Код:
#pragma hdrstop
#include <iostream.h>
#include <conio.h>
#include <fstream.h>
#pragma argsused
//------------------------------
#define nachalo int main()
#define vpered do
#define poka while
#define otkrit ifstream f1(name)
#define zakritie f1.close()
#define zapic void zap (char *name)
#define chtenie void pok (char *name)
void zap (char *name);
void pok (char *name);
struct form {
    char name[30];
    char tip[10];
    int kb;
    };
//--------------------------------
nachalo{
const int N=100;
char str[N];
int n=0;
cout << "Viberi komandu' " << endl;
cin.getline(str,N);
poka (n!=3){
    //cout << "" << endl;
    cout << "1-dobavit zapis;" << endl;
    cout << "2-pokazat vse;" << endl;
    cout <<"3-Exit;"<<endl;
    cout << "Vash vibor: " << endl;
    cin >> n;
    switch (n) {
        case 1: zap(str); break;
        case 2: pok(str); break;
        case 3: return 0;
        default : cout << "Error" << endl; break;}
Ответить с цитированием
  (#2 (permalink)) Старый
Артём Фирсанов Артём Фирсанов вне форума
Member
 
Сообщений: 348
Сказал(а) спасибо: 26
Поблагодарили 5 раз(а) в 5 сообщениях
Регистрация: 19.08.2010
По умолчанию 08.01.2013, 15:03

cpp Код:
void main( void )
{
FILE *file;
char* file_name = "file.txt";
char load_string[50] = "none";

file = fopen( file_name, "w" );

fputs( "string", file );

fclose( file );

file = fopen( file_name, "r" );
if( file != 0 )
{
fgets( load_string, 50 , file );
cout << "load_string = " << load_string << endl;
}
else
{
cout << "File not found !!!" << endl;
}
fclose(file);

}
Ответить с цитированием
  (#3 (permalink)) Старый
Артём Фирсанов Артём Фирсанов вне форума
Member
 
Сообщений: 348
Сказал(а) спасибо: 26
Поблагодарили 5 раз(а) в 5 сообщениях
Регистрация: 19.08.2010
По умолчанию 08.01.2013, 15:06

где по умолчпнию он ищет файл?
Ответить с цитированием
  (#4 (permalink)) Старый
Egorro Egorro вне форума
Специалист
 
Аватар для Egorro
 
Сообщений: 13,078
Сказал(а) спасибо: 402
Поблагодарили 2,128 раз(а) в 2,056 сообщениях
Регистрация: 06.01.2011
Адрес: Чубаксары
По умолчанию 08.01.2013, 15:07

Цитата:
Сообщение от Артём Фирсанов Посмотреть сообщение
где по умолчпнию он ищет файл?
Насколько я помню - в папке с компилированным ехешником ))
Ответить с цитированием
Пользователь сказал cпасибо:
Артём Фирсанов (08.01.2013)
  (#5 (permalink)) Старый
Артём Фирсанов Артём Фирсанов вне форума
Member
 
Сообщений: 348
Сказал(а) спасибо: 26
Поблагодарили 5 раз(а) в 5 сообщениях
Регистрация: 19.08.2010
По умолчанию 08.01.2013, 15:10

Спс щас попробую, решил просто координально перекроить лабу
Ответить с цитированием
Ads.
  (#6 (permalink)) Старый
Артём Фирсанов Артём Фирсанов вне форума
Member
 
Сообщений: 348
Сказал(а) спасибо: 26
Поблагодарили 5 раз(а) в 5 сообщениях
Регистрация: 19.08.2010
По умолчанию 08.01.2013, 15:15

не подскажите где описание функций stdio.h найти?
Ответить с цитированием
  (#7 (permalink)) Старый
Egorro Egorro вне форума
Специалист
 
Аватар для Egorro
 
Сообщений: 13,078
Сказал(а) спасибо: 402
Поблагодарили 2,128 раз(а) в 2,056 сообщениях
Регистрация: 06.01.2011
Адрес: Чубаксары
По умолчанию 08.01.2013, 15:18

stdio.h — Википедия )))
Ответить с цитированием
  (#8 (permalink)) Старый
Артём Фирсанов Артём Фирсанов вне форума
Member
 
Сообщений: 348
Сказал(а) спасибо: 26
Поблагодарили 5 раз(а) в 5 сообщениях
Регистрация: 19.08.2010
По умолчанию 08.01.2013, 15:18

cpp Код:
#include <iostream.h>
#include <conio.h>
#include <stdio.h>
#define otkr fopen
#define zakr fclose
#define chtenie
#define zap
void main( void )
{
FILE *file;
char* file_name = "file.txt";
char load_string[50] = "none";

file = fopen( file_name, "w" );

fputs( "string", file );

fclose( file );

file = fopen( file_name, "r" );
if( file != 0 )
{
fgets( load_string, 50 , file );
cout << "load_string = " << load_string << endl;
}
else
{
cout << "File not found !!!" << endl;
}
fclose(file);

}
Ответить с цитированием
  (#9 (permalink)) Старый
Артём Фирсанов Артём Фирсанов вне форума
Member
 
Сообщений: 348
Сказал(а) спасибо: 26
Поблагодарили 5 раз(а) в 5 сообщениях
Регистрация: 19.08.2010
По умолчанию 08.01.2013, 15:21

Блин чет я вообще запутался. надо на do while менюшку сделать и управления всеми этими функциями
Ответить с цитированием
Ads
Ответ

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.




Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
Нardforum.ru - компьютерный форум и программирование, форум программистов