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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> как соединить char x[j] + char y[i] ??? -как эффективно-- 
V
    Опции темы
vinter
Дата 29.3.2007, 19:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Explorer
****


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

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



Цитата(JAnty @  29.3.2007,  18:59 Найти цитируемый пост)
А тогда кагже работает указатель на строку, адрес не меняется, но строка растёт? а?

указатель это всего лишь адрес, а ф-ии вывода выводят все начиная с того на что указывает указатель, до '\0'
apook , это ты к чему??


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


Опытный
**


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

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



Цитата(vinter @  29.3.2007,  19:20 Найти цитируемый пост)
указатель это всего лишь адрес, а ф-ии вывода выводят все начиная с того на что указывает указатель, до '\0'


Адрес не маняется. Допустим у нас в строке 5 символов (5 ячеек в памяти + \0) а с 7 ячейки другая инфа, а мы взять, да изменили нашу строку до 35 символов, как оно сработает?


--------------------
Русский справочник по WinAPI

Возможно всё, что возможно вообразить! Это и значит быть гением как я!
PM MAIL   Вверх
apook
Дата 29.3.2007, 19:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Цитата

apook , это ты к чему??

Что-то навеяло, к вопросу о нуль символах и тем что за ним
а вообще это способ использовать память которая зря пустует 

Цитата

да изменили нашу строку до 35 символов, как оно сработает?

и как-же ты собрался менять размер статического массива?
с динамическим то это не так просто

Это сообщение отредактировал(а) apook - 29.3.2007, 19:39


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


Explorer
****


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

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



Цитата(JAnty @  29.3.2007,  19:36 Найти цитируемый пост)
как оно сработает?

неопределено
Цитата(apook @  29.3.2007,  19:36 Найти цитируемый пост)
а вообще это способ использовать память которая зря пустует 

не надо так, зря ниче не пустует, а вот гемморой всегда на стремеsmile


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


Опытный
**


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

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



Цитата

не надо так, зря ниче не пустует, а вот гемморой всегда на стреме

Все отлично память пустует зря ведь она отведена под массив
из 50 символов тогда как занято 9 остальная allocate, да и гемороя
не так много разве что маленько  smile 


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


Let's do some .NET
****


Профиль
Группа: Модератор
Сообщений: 2828
Регистрация: 19.12.2005
Где: Санкт-Петербург

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



=) ну вот забил ты в большом проекте эту "пустующую память" важными данными...
и через какоето время благополучно забыл об этом)
и думаешь...хммм...а чего она пустует...дайка я туда запишу чонить)

и пожалуйста) вот он и геморрой))) геморройчик)


--------------------
СУВ,
       Partizan.
PM MAIL WWW ICQ Skype GTalk Jabber   Вверх
JAnty
  Дата 29.3.2007, 20:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Цитата(apook @  29.3.2007,  19:36 Найти цитируемый пост)
и как-же ты собрался менять размер статического массива?
с динамическим то это не так просто

Так значит можно.

А я собрался менять *стр /*не массив*/, она же увеличивается не смотря на то, чо там дальше в памяти.


--------------------
Русский справочник по WinAPI

Возможно всё, что возможно вообразить! Это и значит быть гением как я!
PM MAIL   Вверх
apook
Дата 29.3.2007, 20:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Partizan 
Ну вот выделил ты динамическую память через new
забил ее важными данными забыл об этом и удалил через delete

только не спрашивай зачем забывать


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


Let's do some .NET
****


Профиль
Группа: Модератор
Сообщений: 2828
Регистрация: 19.12.2005
Где: Санкт-Петербург

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



apook, причём тут динамическая память) речь ведь шла о предложенном тобой методе использования "простаивающей" памяти)


--------------------
СУВ,
       Partizan.
PM MAIL WWW ICQ Skype GTalk Jabber   Вверх
zkv
Дата 30.3.2007, 18:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата



****


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

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



apookJAnty, на практике, самое ценное в проге, это даные пользователя, а уж потом экономия оперативки и прочее. 
С вашим подходом вы можете не только программу уронить, но и (что в большинстве случаев хуже) эти данные подпортить, и неизвестно, когда это всплывет, и как весело потом будет искать ошибку  smile 
Можно представить, как в какой нибудь проге расчета зарплаты, "случайно" изменится повышающий коэффициент в меньшую сторону, пожалуй это будет справедливо, только если зарплата в этот момент будет рассчитываться для создателя этой программы  smile  

Вот вам примерчик использования "пустующей памяти":
Код

#include <iostream>

struct TESTMEMORY
{
    char str[31];
    char c;
};

int main()
{
    TESTMEMORY tm;
    tm.c = '!';
    tm.str[31] = '?';
    std::cout<<"\ntm.c = "<<tm.c<<"\n";
    std::cin.get();
}  

Цитата(vinter @  29.3.2007,  18:28 Найти цитируемый пост)
респект 2003 студии, она не дала такое скомпилить

хм... мой пример компилится безо всяких замечаний.
PM MAIL   Вверх
apook
Дата 30.3.2007, 18:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Цитата

С вашим подходом

Что за такой не хороший подход, я ведь не настаиваю что это
есть способ которым желательно пользоваться, это вообще не
способ я просто к слову сказал просто показать что такое возможно
точнее если я уверен что элеметы массива существуют то обращаться
к ним необычно на первый взгляд наример str[ -20 ] как я показал
в примере разумеется в ответствеенных участках прогр лучше
пользоваться стандартными методами

ну разве-что иногда...  smile 


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


Explorer
****


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

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



Цитата(zkv @  30.3.2007,  18:27 Найти цитируемый пост)
хм... мой пример компилится безо всяких замечаний.

действительно...странно, а в том примере, у меня писало overflow


--------------------
Мой блог
PM MAIL WWW   Вверх
Страницы: (3) Все 1 2 [3] 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
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.0861 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


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

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