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

Нужен пример того, что работать вроде не должно, но работает - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Задача о Аттестаци http://www.cyberforum.ru/cpp-beginners/thread1084618.html
Привет всем кто читает мою тему. Нуждаюсь вашей помощи. Возникли некоторые проблемы при решении вот этой задачи. У меня там бесконечно идет цикл и намертво зависает программа. Вот сама задача.
C++ Вектора и условие Как сделать так,чтобы условие типа if (temp == bad_word){ temp = checkBad; cout << checkBad << '\n'; } относилось ко всему вектору bad_word? ----- И вопрос из этой же программы #include <iostream> #include <locale.h> http://www.cyberforum.ru/cpp-beginners/thread1084614.html
Перегрузка "operator =" для шаблона класса C++
как правильно перегрузить operator= для щаблона, по идее я принимаю 2 ссылки на объекты этого класса и возвращаю 1 из них ... что-то не так #ifndef ARRAYTP_H #define ARRAYTP_H #include <iostream> #include <cstdlib> template<class T, int n> class arraytp
C++ Класс для обработки строки
Помогите, пожалуйста, исправить ошибку. Условие задачи: Написать программу, в которой предусмотреть класс для организации обработки символьной строки. Внутри класса реализовать два конструктора: 1-й конструктор должен обеспечивать ввод строки с клавиатуры; 2-й конструктор должен формировать символьную строку c помощью ГСЗ (диапазон от 32 до 127). Кроме того, внутри класса предусмотреть 2 метода:...
C++ Sizeof объекта в классе http://www.cyberforum.ru/cpp-beginners/thread1084591.html
Допустим у меня в классе private: char *name; float tsena; int chastota; При подсчете sizeof объекта класса выдает 12. Это понятно. Теперь допустим у меня private: char *name; float tsena;
C++ Огромные числа Подскажите как сделать чтобы переменная y могла принимать огромные значения(больше 10-ти символов) И при этом программа должна корректно выполнять свои функции #define _USE_MATH_DEFINES #include <stdio.h> #include <windows.h> #include <math.h> #include <iostream> void main() подробнее

Показать сообщение отдельно
zss
Модератор
Эксперт С++
 Аватар для zss
6056 / 5659 / 1829
Регистрация: 18.12.2011
Сообщений: 14,455
Завершенные тесты: 1
30.01.2014, 10:02     Нужен пример того, что работать вроде не должно, но работает
0x10, к посту номер 3.
Кликните здесь для просмотра всего текста
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <stdio.h>
typedef struct
{
    char str[6];
    int num;
} NumberRepr;
void format(NumberRepr* number)
{
    sprintf(number->str, "%4d", number->num);
}
int main()
{
    NumberRepr number = {"",1025 };
    format(&number);
    printf("str: %s\n", number.str);
    printf("num: %d\n", number.num);
    return 0;
}
char str[4]; не хватает для записи строки
и она вылезает за пределы массива.
В результате портится переменная, которая лежит за строкой,
а это как раз num.
 
Текущее время: 11:07. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru