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

Операции над указателями - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Возвращаемое значение функции http://www.cyberforum.ru/cpp-beginners/thread772702.html
Добрый день. Есть функция: TextString InfoBox::name(unsigned int i) const { if(i<this->count()) { TextLabel *label = dynamic_cast<TextLabel*>(this->itemAt(i)); return label->text(); } else return ;//? } Не могу сообразить, что вернуть, если индекс i вне диапазона? Пустоту нельзя - не скомпилируется. Как, например, можно вернуть строку: "index out of range"...
C++ есть ли в с++ что - нибудь подобное, и покажите как ... В c# есть команда Ref. Например когда мы хотим передать в качестве параметоров не знач. переменной, а адрес то используем Ref public void somemethod(Ref int b) { b++; // простой пример } http://www.cyberforum.ru/cpp-beginners/thread772700.html
Не могу найти тему с задачами для практики C++
Когда-то видел здесь тему на много страниц. Там кто-то попросил сложные задачи для практики. И там куча их. Поиск ничего не дал.
C++ Удалить третью букву
Дано слово. Удалить его третью букву
C++ Задачка по написанию классов http://www.cyberforum.ru/cpp-beginners/thread772667.html
Помогите, пожалуйста, решить задачу. Времени ну очень мало.O_o 1) Specify, design and implement a class called statistician. After a statistician object is initialized, it can be given a sequence of double type numbers. Each number in the sequence is given to the statistician object by activating a member function called next_number. For example, we can declare a statistician called s, and...
C++ Вывести символы из массива Есть массив char text = "Hello"; Мне надо вывести все до 3 элемента Если написать cout << text << endl; подробнее

Показать сообщение отдельно
aleksandr_t94
0 / 0 / 0
Регистрация: 27.01.2013
Сообщений: 100
27.01.2013, 16:12  [ТС]     Операции над указателями
Цитата Сообщение от Schizorb Посмотреть сообщение
*p++

Сначала выполнится инкремент p, то есть увеличивается на 1 сам указатель. Но раз используется постфиксная форма, то возвращаемым значением операции p++ будет прежний адрес, то есть адрес переменной var.

Затем происходит разыменование, оно возвращает значение var.
Да, согласен, но это если использовать *p++ в самом printf. Я написал пример, и тут мне выводится какая-то фигня в виде адреса ячейки памяти(не уверен). А вот если я буду использовать ++*p, то выведется ровно 124, т.е. будет инкремент. Вот я и запутался. Объясните пожалуйста почему если *p++ то выводит фигня, а если ++*p то выводит 124?
C
1
2
3
4
5
6
7
8
9
10
11
#include <iostream>
 
int main()
{
    int a=123;
    int *p=&a;
    *p++;
    printf("%d\n",*p);
 
    return 0;
}
 
Текущее время: 12:01. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru