Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.97/32: Рейтинг темы: голосов - 32, средняя оценка - 4.97
62 / 62 / 13
Регистрация: 27.01.2009
Сообщений: 279

Документация g++

03.03.2010, 12:49. Показов 6705. Ответов 18
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Недавно начал изучать С++, и хочу научиться искать необходимую документацию, опыта в поиске доки не имел, и хочу попросить совет как мне найти доку например для new(компилятор g++) - собственно нужно узнать он генерирует исключительную ситуацию или возвращает нулевой указатель. Искал тут - http://gcc.gnu.org/onlinedocs/gcc-4.4.3/cpp.pdf но ничего не нашел

Прошу не винить за глупый вопрос, просто хочу научиться читать доку. Спасибо
2
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
03.03.2010, 12:49
Ответы с готовыми решениями:

Документация MSDN
В библиотеках Windows'a нашел интересные статьи по поводу консоли. Есть ли перевод этой документации? Можно ли их как скачать, чтобы...

Документация по SDL
Люди , кто знает пожалуйста киньте ссылки на документацию по SDL =) Заранее спс!

Актуальная документация
Добрый день, уважаемые форумчане. Я новичок в С++ и недавно я услышал, что для поднятия уровня знаний языка необходимо штудировать...

18
Псевдо программист
 Аватар для R0mm
192 / 113 / 37
Регистрация: 19.09.2009
Сообщений: 303
03.03.2010, 12:53
заходите в любой поисковик. я рекомендую google.com
пишите ключевые слова. для данного случая - "c++ new" без кавычек.
смотрите результаты поиска и наслаждаетесь.
0
62 / 62 / 13
Регистрация: 27.01.2009
Сообщений: 279
03.03.2010, 13:06  [ТС]
Цитата Сообщение от R0mm Посмотреть сообщение
заходите в любой поисковик. я рекомендую google.com
пишите ключевые слова. для данного случая - "c++ new" без кавычек.
смотрите результаты поиска и наслаждаетесь.
это понятно, но я ищу именно для g++, читаю сейчас книгу Шилдта, там сказано что в случае неудачи по стандарту new должен возвращать bad_alloc, как тут - http://www.cplusplus.com/refer... bad_alloc/ , "но не все компиляторы соответствуют стандарту и некоторые возвращают нулевой указатель, что тоже не запрещается", так мне нужно узнать конкретно что возвращает new в g++ и где это искать?
1
быдлокодер
 Аватар для kravam
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,705
03.03.2010, 16:29
На счёт документации не знаю. Но, я пожалуй, смогу тебе помочь, еесли ты захочешь узнаТь, что именно возвратил очередной вызов gcc
Речь идёт не о чтении документации, а о нескольких лёгких пассах руками. Если заинтересовался- напиши.
0
Эксперт С++
 Аватар для niXman
3211 / 1459 / 74
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
03.03.2010, 17:40
Цитата Сообщение от norge_goth Посмотреть сообщение
в случае неудачи по стандарту new должен возвращать bad_alloc
так и есть.
за несоответствие стандарту, можно обвинять микрософтстудию и борланд. но не gcc.
0
62 / 62 / 13
Регистрация: 27.01.2009
Сообщений: 279
03.03.2010, 23:35  [ТС]
Цитата Сообщение от kravam Посмотреть сообщение
На счёт документации не знаю. Но, я пожалуй, смогу тебе помочь, еесли ты захочешь узнаТь, что именно возвратил очередной вызов gcc
Речь идёт не о чтении документации, а о нескольких лёгких пассах руками. Если заинтересовался- напиши.
Да конечно, очень хочу для моего развития будет оч полезно внимательно слушаю
0
быдлокодер
 Аватар для kravam
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,705
03.03.2010, 23:44
Ну дело собсно в том, что, как заявляют создатели cmd.exe, узнать, что возвращает та или иная команда. довольно легко. Почитать здесь.
ссылки на другие форумы запрещены

Ключевое слово ERRORLEVEL

Более подробно щас писать некогда, футбол выбил из колеи.
0
62 / 62 / 13
Регистрация: 27.01.2009
Сообщений: 279
03.03.2010, 23:47  [ТС]
Цитата Сообщение от kravam Посмотреть сообщение
Более подробно щас писать некогда, футбол выбил из колеи.
а ну эт дело нужное ща буду разбираться
0
Эксперт С++
 Аватар для niXman
3211 / 1459 / 74
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
03.03.2010, 23:51
Цитата Сообщение от kravam Посмотреть сообщение
Ну дело собсно в том, что, как заявляют создатели cmd.exe, узнать, что возвращает та или иная команда. довольно легко. Почитать здесь.
ссылки на другие форумы запрещены

Ключевое слово ERRORLEVEL

Более подробно щас писать некогда, футбол выбил из колеи.
товарысч, объясните мне плиз, какое отношение имеет cmd.exe к std::bad_alloc ?

Добавлено через 32 секунды
я просто в ступоре
0
Модератор
Эксперт PythonЭксперт JavaЭксперт CЭксперт С++
 Аватар для easybudda
12843 / 7592 / 1766
Регистрация: 25.07.2009
Сообщений: 13,977
04.03.2010, 09:34
kravam, а и в правду не очень понятна связь между значением, возвращаемым программой операционной системе, и значением, возвращаемым вызовом функции внутри программы. Вот к примеру странный код:
C
1
2
3
4
5
6
7
8
#include <stdio.h>
 
int main(void){
    int i = 8 % 7;
    if ( i & 1 )
        return 123;
    return 321;
}
вызвав эту программу можно узнать, какое значение она возвратила:
Code
1
2
3
$ ./return123 
$ echo $?
123
но как узнать, какое значение получила переменная i?
0
Модератор
Эксперт PythonЭксперт JavaЭксперт CЭксперт С++
 Аватар для easybudda
12843 / 7592 / 1766
Регистрация: 25.07.2009
Сообщений: 13,977
04.03.2010, 14:36
Топикстартеру: Можно посмотреть, как оно в заголовочном файле объявлено. К примеру у меня в макоси оно вот так выглядит:
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
$ grep new /usr/include/c++/4.0.0/new 
/** @file new
 *  The header @c new defines several functions to manage dynamic memory and
   *  @brief  Exception possibly thrown by @c new.
   *  errors from the throwing forms of @c new.  */
  /** If you write your own error handler to be called by @c new, it must
  typedef void (*new_handler)();
  new_handler set_new_handler(new_handler) throw();
 *  - normal single new and delete (no arguments, throw @c bad_alloc on error)
 *  - normal array new and delete (same)
 *  - @c nothrow single new and delete (take a @c nothrow argument, return
 *  - @c nothrow array new and delete (same)
 *  Placement new and delete signatures (take a memory address argument,
void* operator new(std::size_t) throw (std::bad_alloc);
void* operator new[](std::size_t) throw (std::bad_alloc);
void* operator new(std::size_t, const std::nothrow_t&) throw();
void* operator new[](std::size_t, const std::nothrow_t&) throw();
// Default placement versions of operator new.
inline void* operator new(std::size_t, void* __p) throw() { return __p; }
inline void* operator new[](std::size_t, void* __p) throw() { return __p; }
2
Evg
Эксперт CАвтор FAQ
 Аватар для Evg
21281 / 8305 / 637
Регистрация: 30.03.2009
Сообщений: 22,660
Записей в блоге: 30
04.03.2010, 16:31
Делается всё просто. Вызывается new и просится очень много памяти. Проверяется, возвращается null или кидается exception
1
Эксперт С++
 Аватар для niXman
3211 / 1459 / 74
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
04.03.2010, 17:37
Цитата Сообщение от Evg Посмотреть сообщение
Вызывается new и просится очень много памяти. Проверяется, возвращается null или кидается exception
так это и понятно. не понятно отношение cmd.exe к std::bad_alloc

Добавлено через 20 секунд
или наоборот)
0
Evg
Эксперт CАвтор FAQ
 Аватар для Evg
21281 / 8305 / 637
Регистрация: 30.03.2009
Сообщений: 22,660
Записей в блоге: 30
04.03.2010, 17:48
Вот реализация оператора new из gcc-4.2.1 (файл gcc-4.2.1/libstdc++-v3/libsupc++/new_op.cc)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
_GLIBCXX_WEAK_DEFINITION void *
operator new (std::size_t sz) throw (std::bad_alloc)
{
  void *p;
 
  /* malloc (0) is unpredictable; avoid it.  */
  if (sz == 0)
    sz = 1;
  p = (void *) malloc (sz);
  while (p == 0)
    {
      new_handler handler = __new_handler;
      if (! handler)
#ifdef __EXCEPTIONS
    throw bad_alloc();
#else
        std::abort();
#endif
      handler ();
      p = (void *) malloc (sz);
    }
 
  return p;
}
Добавлено через 2 минуты
Правда есть ещё какая-то "nothrow"-реализация (файл new_opnt.cc)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
_GLIBCXX_WEAK_DEFINITION void *
operator new (std::size_t sz, const std::nothrow_t&) throw()
{
  void *p;
 
  /* malloc (0) is unpredictable; avoid it.  */
  if (sz == 0)
    sz = 1;
  p = (void *) malloc (sz);
  while (p == 0)
    {
      new_handler handler = __new_handler;
      if (! handler)
    return 0;
      try
    {
      handler ();
    }
      catch (bad_alloc &)
    {
      return 0;
    }
 
      p = (void *) malloc (sz);
    }
 
  return p;
}
1
Эксперт С++
 Аватар для niXman
3211 / 1459 / 74
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
04.03.2010, 17:54
Evg, так я про другое. какое отношение оператор new имеет к вендовскому интерпретатору команд(cmd.exe) ?
0
Evg
Эксперт CАвтор FAQ
 Аватар для Evg
21281 / 8305 / 637
Регистрация: 30.03.2009
Сообщений: 22,660
Записей в блоге: 30
04.03.2010, 18:14
Цитата Сообщение от niXman Посмотреть сообщение
Evg, так я про другое. какое отношение оператор new имеет к вендовскому интерпретатору команд(cmd.exe) ?
Не знаю. Я только отвечал автору на вопрос. Остальную переписку читать заломало

Добавлено через 2 минуты
Цитата Сообщение от niXman Посмотреть сообщение
так и есть.
за несоответствие стандарту, можно обвинять микрософтстудию и борланд. но не gcc.
С учётом того, что на протяжении всей версии gcc-3.*.* и gcc-4.*.* они постоянно привоядт поведение компилятора к стандарту, то твоё утверждение весьма спорно
0
Эксперт С++
 Аватар для niXman
3211 / 1459 / 74
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
04.03.2010, 19:20
Цитата Сообщение от Evg Посмотреть сообщение
С учётом того, что на протяжении всей версии gcc-3.*.* и gcc-4.*.* они постоянно привоядт поведение компилятора к стандарту
к какому из стандартов?
начиная с версии 4.4.* началась реализация с++0х. примерно в одно и то же время, этим занялись все серьезные производители компиляторов.
к сожалению, времена 3.* застал чуть-чуть. так что тут хз.
0
Evg
Эксперт CАвтор FAQ
 Аватар для Evg
21281 / 8305 / 637
Регистрация: 30.03.2009
Сообщений: 22,660
Записей в блоге: 30
04.03.2010, 19:59
4.4 - это совсем свежая версия. А так традиционно g++ очень фривольно общался со стандартами Си++ и разрешал очень много конструкций (видимо, из соображений "а почему бы и нет?"). И проблема из этого росла такая, что многое из софта, которое собиралось на gcc-2.95.3 (последний стабильный компилятор из 2-й серии) не собиралось на 3-их версиях, потому как в софте было много некорректных конструкций, которые 2-й gcc (т.е. g++) кушал, а 3-й уже запрещал. Такая же картина была и при переходе с 3-ей версии на 4-ю, но уже в меньшей степени. Какие-то конкретные примеры не могу дать, ибо по части Си++ у меня туго.

Нынешние версии поддерживают какие-то конструкции типа extern template, правда, скорее всего, это уже относится к расширениям gnu
1
Эксперт С++
 Аватар для niXman
3211 / 1459 / 74
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
04.03.2010, 21:12
Цитата Сообщение от Evg Посмотреть сообщение
extern template
это требование с++0х. не скажу что это необходимо, ибо это не так. но существенно(очень) ускоряет компиляцию исходников шаблонного кода, и объем сгенерированого объектника. всего лишь.

Добавлено через 3 минуты
если любопытно, вот что реализовано: http://gcc.gnu.org/gcc-4.5/cxx0x_status.html
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
04.03.2010, 21:12
Помогаю со студенческими работами здесь

документация по для пользователя
Ничерта не понимаю в этом. Дали задание в универе, хоть кровь из носа надо сдать, хелп, плиз Написать программу позволяющую вводить...

Документация по флагам оптимизации
Подскажите мануал, документацию, гайд по флагам оптимизации. Желательно на русском. А то у меня программа весело себя ведёт. ...

Иерархия классов документация.
Здрастввйте алл. Пришлось заняться С++ Буилдером. Столкнулся с проблемой.. что все, что в документации и в учебниках как-то непривычно...

Документация и примеры по файлу dsound.h
Добрый день, у меня MVS 2010 Express, подключил dsound.h, но не могу найти по нему документацию, на сайте Микрософта инфы мало и примеров...

Последняя официальная документация по стандарту СРР
Кто знает, где обитает последняя официальная документация по стандарту СРР ?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
19
Ответ Создать тему
Новые блоги и статьи
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru