Форум программистов, компьютерный форум CyberForum.ru

Создание класса путем наследования - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Массив: Найти такую неразрывную последовательность положительных чисел, сумма элементов у которой максимальная. http://www.cyberforum.ru/cpp-beginners/thread834860.html
Найти такую неразрывную последовательность положительных чисел, сумма элементов у которой максимальная. ну вот я сделал, но только будет работать, если есть только один отрицательный элемент. #include<iostream> #include<conio.h> using namespace std; int main() { const int n=8;
C++ C++11 новые классы стандартной библиотеки Здравствуйте. Программирую в eclipse на С++, использую С++11. Код в новом стандарте компилируется, однако мне нужен новый класс initializer_list (+ ещё другие новые классы). Посмотрел, что сам заголовочный файл есть в системе. Директива include его находит. Однако std::initializer_list не воспринимает, пишет что-то вроде "нет такого элемента в пространстве имён". Кроме этого, не видит конструктор... http://www.cyberforum.ru/cpp-beginners/thread834844.html
Инлайн-функция замедляет работу C++
Здравствуйте! видимо что-то делаю неправильно...имею код. Запускаю скомпилированную программу - работает с одной скоростью. Копипастю код в инлайн функцию - скорость выполнения резко уменьшается. если кому интересно - вот начальный код // Task3.cpp: определяет точку входа для консольного приложения. // #include <stdlib.h> #include <math.h> #include <sys/time.h> #include <iostream>...
Даны шесть различных чисел. Определить максимальное из них C++
Даны шесть различных чисел. Определить максимальное из них. (Определить функцию, находящую максимум из двух различных чисел.) Еще одна подобная тема, и последуют санкции.
C++ Выяснить является ли хоть одно из данных чисел палиндромом(перевёртышем) http://www.cyberforum.ru/cpp-beginners/thread834825.html
Даны 2 натуральных числа выяснить является ли хоть одно из них палиндромом(перевёртышем) тоесть таким числом десятичная запись которого читается одинаково слева на право и справо на лево.(определить функции позволяющие распозновать числа палиндромы)
C++ Лучшие ресурсы в Интернет - разработчикам C++ Все источники широко известны - но тем не менее: http://strongcpp.blogspot.ru/2013/04/c.html подробнее

Показать сообщение отдельно
Сеня 2007
2 / 2 / 0
Регистрация: 03.10.2010
Сообщений: 182
17.05.2013, 15:51  [ТС]     Создание класса путем наследования
Уже неделю парюсь помогите реализовать чтение из одного файла и запись в другой с помощью fread, fwrite.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
#include <string>
#include <iostream>
#include  <conio.h>
 
class CFile
{
    FILE *f;
    char *name;
public:
    virtual void open(char *name2)
    {
        name=name2;
        printf("File open");
        f=fopen(name,"r");
 
 
 
    }
    
 
    void close()
    {
    fclose(f);
    }
 
    void seek()
    {
        fpos_t razm;
        int razm2;
    fseek(f,0, SEEK_END);
    fgetpos(f,&razm);
    razm2=int(razm);
    printf("Razmer %d",razm2);
    }
 
    void read()
    {
        int buf=0;
        //char buf1;
        //buf1=char(&buf);
    fread(&buf,sizeof(int),1,f);
    printf("%s\n",buf);
    }
 
    void write(char *dannie, int *kol)
    {
        FILE *naz;
        naz=fopen("2.txt","w");
    fwrite(&dannie,sizeof(char),size_t(&kol),naz);
    }
 
};
 
class CMyDataFile : public CFile
{
public:
    
    void open(char *name)
    {
        /*char ras[5]=".txt";
        int dl =0;
        dl=strlen(name);
        for(dl;;dl--)
            if(name[dl]==ras[dl])
            {
            printf("Vse zaibis");
    } else printf("Huevo");*/
            
char *ext = ".txt";
char *st = strstr(name, ext);
 
if(st != NULL && strlen(st) == strlen(ext)) {
//подходит под расширение
    printf("Vse zaibis");
printf("\nyes\n");
}else{printf("Huevo");
//не подходит
printf("\nno\n");
}
 
/*  if(name=="*.txt")
    {
        printf("Vse zaibis");
    } else printf("Huevo");*/
    CFile::open(name);
    }
 
    void write(char *dannie, int *kol)
    {
        
        
        if(int(sizeof(&dannie))!=int(*kol))
        {
        printf("\nS dlinoi vse OK\n");
        CFile::write(dannie,kol);
        } else 
        {
        printf("\nDlina ne sootvetstvuet\n");
        }
    }
};
 
void main(void)
{
CMyDataFile m;
char name;
printf("\nVvesti imya:\n");
scanf("%s",&name);
m.open(&name);
m.seek();
//m.read();
char dan;
int dl=0;
/*printf("\nVvesti dannie i dlinu:\n");
scanf("%s %d",&dan,&dl);
m.write(&dan, &dl);*/
getch();
}
Постоянно выдает ошибка прав доступа. Как с ней бороться? И в buf пишется черти что.

Добавлено через 55 минут
Выручайте!!

Добавлено через 16 часов 36 минут
Сделал почти все осталось сделать функцию write. Пока пишет в файл мусор всякий с чем это связано?
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru