Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/4: Рейтинг темы: голосов - 4, средняя оценка - 5.00
3 / 3 / 0
Регистрация: 30.03.2011
Сообщений: 61
1

Проверка оператора присваивания

23.01.2013, 23:39. Показов 830. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Программа должна находить и проверять правильность написания операторов присваивания в исходном тексте программы.
Результатом работы должен быть текст анализируемого фрагмента программы со вставленными в ошибочных местах комментариями о характере ошибки.

в чем тут ошибка ?

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
#include "stdafx.h"
#include "iostream"
#include "fstream"
 
using namespace std;
 
int _tmain(int argc, _TCHAR* argv[])
{
    char source[300], res[300];
    ifstream in("D:\\programm.txt");
    if(!in.is_open() )
    {
        cout<<"File not found.\n";
        return 0;
    }
    in.get(source, 300, '.');
    char *s = strstr(source,"=");  
    if(s!=NULL)
    {
        int i=s-&source[0];
        i+=1;
        while(source[i] == ' ') i++;
        if(source[i] !=';')
        {
            strncpy(res,source, i-1);              
            res[i-1] = 0;
            strcat(res, " /*Must be = */ ");
            strcat(res, &source[i]);               
            cout<<res;
            return 0;
        }
    }
    cout<<source;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
23.01.2013, 23:39
Ответы с готовыми решениями:

Избыточное копирование объекта при реализации оператора умножения и оператора присваивания
Есть класс работы с матрицами. Есть операция умножения матриц, описанная как оператор класса. В...

Неправильная работа оператора присваивания после работы оператора суммирования
Доброго времени суток. У меня есть класс вектор class TVector {//ewde public: TVector();...

Перегрузка оператора присваивания
MyArray&amp; operator=( MyArray &amp;arrInt2 ) //Зачем писать MyArray&amp; operator?А почему не MyArray...

Перегрузка оператора присваивания
struct pointer_command { public: void * x; public: void set(void * y){x = y; } void...

3
Каратель
Эксперт С++
6609 / 4028 / 401
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
24.01.2013, 01:08 2
Цитата Сообщение от warspirit Посмотреть сообщение
в чем тут ошибка ?
а с чего вы взяли что тут ошибка?
1
Форумчанин
Эксперт CЭксперт С++
8215 / 5045 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
24.01.2013, 01:13 3
До 33 строчки прога в жизни не дойдет.
res[i-1] = 0; подозреваю, что res[i-1] = '\0';
Хедеры должны быть такие:
C++
1
2
3
#include <iostream>
#include <fstream>
#include <cstring>
1
3 / 3 / 0
Регистрация: 30.03.2011
Сообщений: 61
24.01.2013, 01:28  [ТС] 4
исправил вот эту часть кода с
C++
1
if(source[i] !=';')
на
C++
1
if(source[i+1] !=';')
стало работать правильно .
0
24.01.2013, 01:28
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.01.2013, 01:28
Помогаю со студенческими работами здесь

Переопределение оператора присваивания
Имеется такой простой класс: class TClass { private: float* A; int N; public:...

Перегрузка оператора присваивания
Доброго времени суток! Возник вопрос по поводу перегрузки оператора присваивания. Пример...

Перегрузка оператора присваивания
Доброго времени суток всем! Никак не могу правильно написать перегрузку оператора присваивания. ...

Перегрузка оператора присваивания
Задание простое: по заданному классу составить простую программу с использованием динамической...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru