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

Переполнение буфера. В int появляется 3 - C++

Восстановить пароль Регистрация
 
Roman_P
11 / 11 / 5
Регистрация: 22.08.2013
Сообщений: 77
08.12.2013, 14:38     Переполнение буфера. В int появляется 3 #1
Вот код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <string.h>
#include <stdio.h>
 
int main() {
    int b = 0;
    char a[1];
    printf("adres b %p\n",a);
    printf("adres a %p\n",&b);
    gets(a);
    printf("znachenie a %s\n",a);
    printf("znachenie b 10-noe %u\n",b);
    printf("znachenie b 16-noe %x\n",b);
    gets(a);
    }
При переполнении в b числа, которые я ввёл появляются с конца и между ними 3-ки.

Примеры:
Кликните здесь для просмотра всего текста
1)
adres b 0020F773
adres a 0020F77C
9876543212
znachenie a 9876543212
znachenie b 10-noe 50
znachenie b 16-noe 32

2)
adres b 0024FBFF
adres a 0024FC08
123456789875
znachenie a 123456789875
znachenie b 10-noe 3487544
znachenie b 16-noe 353738

Можно объяснить, откуда 3-ки?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.12.2013, 14:38     Переполнение буфера. В int появляется 3
Посмотрите здесь:

C++ переполнение буфера
C++ Переполнение буфера
C++ Переполнение буфера! (наверное)
C++ Переполнение буфера
C++ Переполнение буфера
C++ Не получается сделать переполнение буфера
Переполнение буфера C++
Переполнение буфера, адрес возврата C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 20:08. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru