Модераторы: Daevaorn

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Для начинающих, кто занимаеться по -Е.Л. Шиманович С/С++ 
:(
    Опции темы
Metixa
  Дата 2.11.2006, 20:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 42
Регистрация: 29.10.2006

Репутация: нет
Всего: нет



давайте начинающие.. поделимся опытом, а если кто-то из проф-ов нам поможет им большой Благодарность
PM MAIL   Вверх
Kuvaldis
Дата 2.11.2006, 20:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


механик-вредитель
***


Профиль
Группа: Участник Клуба
Сообщений: 1189
Регистрация: 16.6.2006
Где: Минск

Репутация: 11
Всего: 61



Metixa
ты бы еще предложил: "давайте поговорим не знаю о чем".
Не нарывайся на репрессии, задавай более конкретные вопросы


--------------------
Помни - когда ты спишь, враг не дремлет
Спи чаще и дольше, изматывай врага бессоницей
PM MAIL ICQ   Вверх
Metixa
Дата 2.11.2006, 21:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 42
Регистрация: 29.10.2006

Репутация: нет
Всего: нет



в этом книжке не понял я:
стр. 247. 

ВНИМАНИЕ:  Инициализировать динамический массив нельзя.

 как, это же инициализация члена массива   

#include<iostream>
using namespace std;
void main () {
int r= 4;
    int *pi = new int[r];
    *(pi+2) = 44;
cout<<*(pi+2)<<endl;
}


 что очень просто компуется... 

PM MAIL   Вверх
JackYF
Дата 2.11.2006, 21:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


полуавантюрист
****


Профиль
Группа: Участник
Сообщений: 5814
Регистрация: 28.8.2004
Где: страна тысячи озё р

Репутация: 18
Всего: 162



Это не инициализация... Это просто запись по адресу, и все... что здесь особо непонятно...
Говорится про то, что нельзя прямо в месте выделения массива присвоить его элементам определенные значения, как для статического массива...


--------------------
Пожаловаться на меня как модератора можно здесь.
PM MAIL Jabber   Вверх
bsa
Дата 2.11.2006, 21:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 63
Всего: 196



Там, наверное, имелось в виду, что нельзя сразу весь заполнить одной командой при выделении памяти.
JackYF уже это сказал. smile

Это сообщение отредактировал(а) bsa - 2.11.2006, 21:44
PM   Вверх
Metixa
Дата 2.11.2006, 22:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 42
Регистрация: 29.10.2006

Репутация: нет
Всего: нет



а здесь:

#include<iostream>
using namespace std;
void main () {
for(int i = 1; i<7; i++)
{int *pi = new int(i);
cout<<*pi<<endl;}
}

??????????

Это наверно просто рядом записанные динамические данные, а не массив, правильно?

Это сообщение отредактировал(а) Metixa - 2.11.2006, 22:59
PM MAIL   Вверх
apook
Дата 2.11.2006, 23:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 794
Регистрация: 12.7.2006

Репутация: 9
Всего: 23



А там выше должно быть 


int **pi=new int [7];


а потом

for(int i = 1; i<7; i++)
{int *pi = new int [i]; 





--------------------
Мои руки из дуба, голова из свинца ну и пусть ...
PM MAIL   Вверх
Fazil6
Дата 2.11.2006, 23:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1653
Регистрация: 3.5.2006
Где: Минск

Репутация: 35
Всего: 60



Цитата

Это наверно просто рядом записанные динамические данные, а не массив, правильно?

это не массив. это динамическое создание интов. совсем не обязательно они будут подряд в памяти находиться 
PM MAIL   Вверх
Xenon
Дата 3.11.2006, 01:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1529
Регистрация: 12.4.2006

Репутация: 11
Всего: 50



Fazil6, ... в C++ smile


--------------------
user posted image  
PM MAIL   Вверх
Fazil6
Дата 3.11.2006, 11:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1653
Регистрация: 3.5.2006
Где: Минск

Репутация: 35
Всего: 60



Цитата(Xenon @  3.11.2006,  01:46 Найти цитируемый пост)
Fazil6, ... в C++ 

читал... 
много думал... 
о чем речь невтыркнул...
PM MAIL   Вверх
Xenon
Дата 3.11.2006, 14:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1529
Регистрация: 12.4.2006

Репутация: 11
Всего: 50



Fazil6, честно говоря я сегодня тоже smile У меня вчера был сложный день: зашел в форум Borland`a и с уверенностью, что это форум по Visual C++ ... кароче ответил в тему smile
Судя по всему я писал про расположение в памяти двумерных массивов в разных языках, только зачем  smile 


--------------------
user posted image  
PM MAIL   Вверх
vinter
Дата 3.11.2006, 14:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Explorer
****


Профиль
Группа: Завсегдатай
Сообщений: 2735
Регистрация: 1.4.2006
Где: Н.Новгород

Репутация: 13
Всего: 56



Код

for(int i = 1; i<7; i++)
{int *pi = new int(i);
cout<<*pi<<endl;}
}

так ты не массив заполняешь, а каждый раз выделяешь новую память под указатель, соответсвенно в конце цикла pi будет указывать на последний элемент полученный в цикле, а к остальным ты обратиться не сможешь..

Код

А там выше должно быть 
int **pi=new int [7];//ошибка
а потом

for(int i = 1; i<7; i++)
{int *pi = new int [i];


че то непонятно что ты пытался изобразить..


--------------------
Мой блог
PM MAIL WWW   Вверх
Metixa
Дата 4.11.2006, 22:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 42
Регистрация: 29.10.2006

Репутация: нет
Всего: нет



всем благодарью

PM MAIL   Вверх
Metixa
Дата 8.11.2006, 23:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 42
Регистрация: 29.10.2006

Репутация: нет
Всего: нет



просьба, не ошибка на стр. 268. с низу  16 строке 

if(sum[j] sum[nmin])  nmin = j;

по моему <, а не >;

PM MAIL   Вверх
JackYF
Дата 9.11.2006, 13:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


полуавантюрист
****


Профиль
Группа: Участник
Сообщений: 5814
Регистрация: 28.8.2004
Где: страна тысячи озё р

Репутация: 18
Всего: 162



Цитата(Metixa @  8.11.2006,  23:44 Найти цитируемый пост)
просьба, не ошибка на стр. 268. с низу  16 строке 

if(sum[j] > sum[nmin])  nmin = j;

по моему <, а не >;


Да, скорее всего... Если, конечно, автор под индексом nmin не подразумевал индекс макс. элемента smile



--------------------
Пожаловаться на меня как модератора можно здесь.
PM MAIL Jabber   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0906 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.