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

Указатели :) - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Проверьте правильность кода. Почему выдаёт ошибку? http://www.cyberforum.ru/cpp-beginners/thread250810.html
Написать программу, которая считывает текст из файла, находит самое длинное слово и определяет, сколько раз оно встретилось в тексте. Текст программы #include "stdafx.h" #include <stdio.h> #include <conio.h> #include <windows.h>
C++ закрытие программы Здравствуйте господа програмисты!у меня такой вопрос-допустим известно что открыта какая то программа,могу ли я её програмно закрыть если да,то как? Всем заранее огромное спасибо!!! Добавлено через 1 минуту на языке с++ http://www.cyberforum.ru/cpp-beginners/thread250794.html
C++ Определить, пересекаются ли прямая и окружность
Задана окружность с центром в точке О(x0,y0) и радиусом R и прямая у=ах+b. Определить, пересекаются ли прямая и окружность. При положительном ответе найти точки пересечения
Задание на C C++
Ребята помогите решить задание.
C++ Сформировать одномерный массив целых чисел, используя датчик случайных чисел http://www.cyberforum.ru/cpp-beginners/thread250778.html
Условие такое 1.Сформировать одномерный массив целых чисел, используя датчик случайных чисел. Распечатать полученный массив. 2.Удалить 5 последних элементов массива. 3.Добавить в начало массива 3 элемента с значением M+2. Распечатать полученный массив. Делаю. #include <iostream.h>
C++ Матрицы и строки Прошу помочь с решением задач: С клавиатуры вводится матрица размером n x m: 1)Вычислить сумму всех чисел кратных трем в этой матрице и заменить максимальный элемент на эту сумму. 2)Заменить все четные элементы в заданном столбце на минимальный элемент. Строки: 1)С клавиатуры вводится строка символов состоящая из слов. Удалить из строки все слова длиной четыре символа. 2)С клавиатуры... подробнее

Показать сообщение отдельно
kazak
 Аватар для kazak
3029 / 2350 / 155
Регистрация: 11.03.2009
Сообщений: 5,401
02.03.2011, 14:15     Указатели :)
Цитата Сообщение от silent_1991 Посмотреть сообщение
А вы как думаете?
Уже не думаю, уже понял) Но раньше я такой записи не встречал.

Цитата Сообщение от dimon1984 Посмотреть сообщение
почему в первом случае в 3-й строчке нужна *(звёзд-ка), а во втором нет? Оба примера работают.
В данном случае pMas обычный указатель на char, для которого cout перегружен таким образом, что елси cout получает имя указателя, он выводит содержимаое памяти на экран начиная с символа на который указывает указатель до тех пор, пока не встретит нулевой символ. А ptr является некоторым аналогом двумерного массива и с который работает как двумерный массив.

Цитата Сообщение от dimon1984 Посмотреть сообщение
как к примеру с помощью указателей отсортировать массив?
Учти, что в твоем примере объявлен массив константных строк, в котором не возможно будет поменять значения сторок и непосредственно сам массив отсортировать не получится. Сдесь можно объявить массив указателей, в каждый указатель которого записывается адрес отдельной строки исходного массива и отсортировать этот массив указателей как тебе требуется.

Цитата Сообщение от dimon1984 Посмотреть сообщение
Ещё вопрос: почему этот код компилируется, но выдаёт ошибку при запуске?
Цитата Сообщение от dimon1984 Посмотреть сообщение
int m=5;
C++
1
2
3
4
5
6
7
8
9
10
 int* p;
 _asm
 {
// xor eax,eax
// mov ah,m
 mov eax,dword ptr m // [U]записать содержимое m в eax[/U], m = 5
 mov p,eax // записать содержимое eax в p, поле этого p будет равняться 5!
 }
 cout<<*p<<endl;//получить содержимое находящееся по адресу p, т.е. 5, а по младшим адрессам 
обычно запрещенно чтение\запись
Правильно будет вместо mov eax,dword ptr m написать lea eax,dword ptr m
 
Текущее время: 10:46. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru