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

Инкремент. Где ошибка - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Добавить класс в программу http://www.cyberforum.ru/cpp-beginners/thread151184.html
С классами совсем не знаком, поэтому обращаюсь к Вам) Требуется присутствие класса в коде. вот сам код: #include<conio.h> #include<stdio.h> #include<stdio.h>
C++ Си, использование вложенных файлов *.c Всем доброго времени дня! Вопрос: Пишу программу на C под Linux. есть файл main.c, в котором у меня располагается основное тело программы, функции итд... Но считаю это избыточным, хочу функции вывести в другой сишный файл, к примеру utils.c... Как использовать функции в utils.c вызывая их из main.c? В main.c делал #include <utils.c>, но не помогло...Прописывал в utils.c вначале все... http://www.cyberforum.ru/cpp-beginners/thread151152.html
Как именно округляются float и double? C++
Вот имеется double l, функция sqrt из cmath и следующие формулы: sqrt(2-2*sqrt(1-l*l/4)) sqrt(l*l/4+1-sqrt(1-l*l/4)-sqrt(1-l*l/4)+1-l*l/4) sqrt(l*l/4+(1-sqrt(1-l*l/4))*(1-sqrt(1-l*l/4))) Если l длина стороны вписанного в круг с радиусом 1 правильного многоугольника с 2^n сторонами, то формула должна вычислить длину стороны вписанного в тот же круг правильного многоугольника с 2^{n+1}...
C++ Компилятор C не C++
Где можно скачать один крмпилятор C (без C++!!!) можно можно в IDE главное чтобы весил как можно меньше в google искал он мне выдаёт копиляторы C/C++ и весят они до... короче много!!! Заранее всем спасибо!!!
C++ перевод строк http://www.cyberforum.ru/cpp-beginners/thread151134.html
как перевести строку при работе с файлами? заранее спасибо
C++ знаю паскаль, учу с++. какие языки ещё нужны? может ассемблер, или яву? знаю паскаль, учу с++. какие языки ещё нужны? может ассемблер, или яву? подробнее

Показать сообщение отдельно
scar4ace
Сообщений: n/a
02.07.2010, 17:38     Инкремент. Где ошибка
Привет, помогите плз с кодом, некорректный результат инкремента..(
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
#include "stdafx.h"
#include <iostream>
using namespace std;
 
class SimpleCircle
{
public:
    //конструкторы
    SimpleCircle(); //стандартный
    SimpleCircle(int); //пользовательский
    SimpleCircle(const SimpleCircle &); //копий
    ~SimpleCircle(){}
    //методы доступа
    int GetRadius () const {return *itsRadius;}
    void SetRadius(int radius) {*itsRadius=radius;}
    //операторы
    const SimpleCircle & operator++(); //префикс
    const SimpleCircle operator++(int); //постфикс
private:
    //переменные
    int *itsRadius;
};
 
SimpleCircle::SimpleCircle()
{
    itsRadius=new int(5); //1 вариант синтаксиса
    //itsRadius=new int; //2 вариант синтаксиса
    //*itsRadius=5;
}
SimpleCircle::SimpleCircle(int radius)
{
    itsRadius=new int(radius); //1 вариант синтаксиса
    //itsRadius=new int; //2 вариант синтаксиса
    //*itsRadius=radius;
}
SimpleCircle::SimpleCircle(const SimpleCircle & rhs)
{
    int val=rhs.GetRadius();
    itsRadius=new int(val);
}
 
const SimpleCircle & SimpleCircle::operator ++() // реализация префикса
{
    ++(itsRadius);
    return *this; 
}
const SimpleCircle SimpleCircle::operator ++(int) //реализация постфикса
{
    SimpleCircle temp(*this);
    ++(itsRadius);
    return temp;
}
 
int main()
{
SimpleCircle CircleOne(7),CircleTwo;
cout<<"CircleOne Radius: "<<CircleOne.GetRadius()<<endl;
CircleOne=++CircleOne;
cout<<"CircleOne Radius after increment: "<<CircleOne.GetRadius()<<endl;
return 0;
}
результат после инкремента:
-33686019
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 08:11. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru