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

pointer - pointer - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Создать программу, вводящую в цикле N дробей, и выводящую эти дроби в порядке возрастания http://www.cyberforum.ru/cpp-beginners/thread888111.html
Помогите сделать: 1. Создать программу, вводящую в цикле N дробей, и выводящую эти дроби в порядке возрастания.
C++ Создание программы со своей библиотекой ( удаление элементов с N по M в строке и удаление лишних пробелов(если 2 и более оставить один)) добрый день. помогите, пожалуйста понять мои ошибки в работе. Мне нужно написать программу со своей библиотекой, которая включает в себя две функции: удаление элементов с N по M в строке и удаление лишних пробелов(если 2 и более оставить один). вот что у меня получилось: библиотека: void f1(char *str, N, M ) { int I, j; for(I=N; I<=M; I++) { for(j=I; j<=M; j++) http://www.cyberforum.ru/cpp-beginners/thread888108.html
C++ Описание класса полиномов от 1 переменной. Комментарии к коду
Есть программа описания класса полиномов от 1 переменной. Прошу разъяснить что тут к чему, я мало что в этом понимаю :( #include <iostream> #include <stdlib.h> #include <math.h> using namespace std;
Добавить mingw в среду path C++
Как это сделать? Но у меня в среде path уже есть компилятор jdk, как добавить еще один компилятор?
C++ Программа перекрашивает bmp файл подскажите что не так в ней?! http://www.cyberforum.ru/cpp-beginners/thread888081.html
Помогите что в ней не так или что надо изменить? #include "stdafx.h" typedef unsigned char BYTE; #pragma pack(pop) struct tagRGBQUAD { BYTE rgbBlue; BYTE rgbGreen; BYTE rgbRed;
C++ Написать программу, которая формирует два списка по правилу Помогите написать задачу с помощью списков Из входного потока в произвольном порядке содержащим одиночные буквы русского языка и константы целых чисел, читаются пары (буква, число).Если в последней паре не хватает числа, считать его 0.Буква считается одиночной, если слева и справа от нее — не буква. Будем считать, что следом за буквой не цифра. Написать программу, которая формирует два списка. подробнее

Показать сообщение отдельно
IvanInanovich
0 / 0 / 0
Регистрация: 03.01.2013
Сообщений: 113
02.06.2013, 21:51     pointer - pointer
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include<iostream>
#include<algorithm>
using namespace std;
 
int main()
{
 
    int arr[] = {8,4,6,15,36,78,9,10};
    int *ptr;
    ptr = find(arr,arr+8,15);
    cout << *arr << endl;
    cout << "\nFirst object with value 33 found at offset: " << (ptr - arr) ;
 
return 0;
}
Объясните пожалуйста, как в данном случае указатель минусуется указателем(ptr - arr). Просим алгоритм find найти число 15. В ptr хранится позиция 3(с 0) элемента массива. Указатель arr (тобишь начало массива, 0 позиция). Каким образом это работает?

Добавлено через 6 часов 38 минут
Ребят, помогите разобраться.
Голову сломал пока пытался понять. Печально то, что так и не дошло до меня.

К примеру, указатель имеет адрес массива + смещен на 5 позицию(учитывая нуль). Каждая позиция это 4 байта (в случае типа int). Массив из 8 элементов = 32 байта.
По идее происходит следующее:
0х46е010(массив + смещение) - 0х46е000 (адрес массива) = 0х000010. (Адреса взяты из своего ПК.)
Остается 10. Каким образом программа показывает 5 элемент массива?

Если я правильно понимаю,то 10, это 10 бит, т.е. 2.5 элемента массива int.

Полез я наверное куда не следовало и запутался окончательно. : ) Жаль что автор книги оставил без внимания этот момент.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 06:30. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru