"Hello, world!" не компилируеться на VC 7.3
От: sergey_shandar США http://getboost.codeplex.com/
Дата: 01.04.04 09:58
Оценка: 3 (1) :))) :))) :))) :))) :))) :))) :))) :)
Вот разбираюсь с новой версией Visual C++ 7.3, которая входит в поставку Visual Studio .Net 2004. Первое с чем столкнулся, не компилируеться простейщий пример.
#include <stdio.h>
int main()
{
  printf("Hello, world!\n");
}


Ругаеться, говорит:
main.cpp : error 1945 (3): undefined identifier "format".


Долго мучался. Решил посмотреть в файл stdio.h. При дальнейшем рассмотрении выяснилось, что printf обьявлен в stdio просто как макрос, который использует boost::format и std::cout. Но разработчики забыли включить boost/format.hpp в stdio.h. Пришлось переписать пример так:

#include <boost/format.hpp>
#include <stdio.h>
int main()
{
  printf("Hello, world!\n");
}


Хорошо что теперь MS поставляет VC вместе с библиотекой boost. А то пришлось бы выкачивать.

Из за этого нововведения, параметры в printf теперь задаються так:

#include <boost/format.hpp>
#include <stdio.h>
int main()
{
  int i = 3;
  printf("Hello, world! %d \n") % i;
}


Подробнее как задавать праметры к printf описано в документации boost.

01.04.04 18:59: Перенесено модератором из 'C/C++' — ПК
getboost.codeplex.com
citylizard.codeplex.com
Re: "Hello, world!" не компилируеться на VC 7.3
От: Аноним  
Дата: 01.04.04 10:07
Оценка:
Если уж на то пошло, то включать надо <cstdio>
Re[2]: "Hello, world!" не компилируеться на VC 7.3
От: Аноним  
Дата: 01.04.04 10:46
Оценка: +1
Здравствуйте, Аноним, Вы писали:

А>Если уж на то пошло, то включать надо <cstdio>


Вы явно не читали ISO/IEC 14882:2004. В соответствии с 17.4.1.2/4, этот заголовок является deprecated. Включать теперь нужно <stdio.hpp>.
Re[3]: "Hello, world!" не компилируеться на VC 7.3
От: Lorenzo_LAMAS  
Дата: 01.04.04 10:52
Оценка:
А>Вы явно не читали ISO/IEC 14882:2004. В соответствии с 17.4.1.2/4, этот заголовок является deprecated. Включать теперь нужно <stdio.hpp>.

Дайте цитату, пожалуйста. А что по этому поводу в ISO/IEC 14882:2005 ?
Of course, the code must be complete enough to compile and link.
Re: "Hello, world!" не компилируеться на VC 7.3
От: Vamp Россия  
Дата: 01.04.04 10:54
Оценка:
Черт, этому по хорошему самое место в юморе. Но ведь там не только сишники тусуются, люди не поймут...
А за шутку — 5 баллов.
Да здравствует мыло душистое и веревка пушистая.
Re[2]: "Hello, world!" не компилируеться на VC 7.3
От: WolfHound  
Дата: 01.04.04 10:57
Оценка:
Здравствуйте, Vamp, Вы писали:

V>Черт, этому по хорошему самое место в юморе. Но ведь там не только сишники тусуются, люди не поймут...

V>А за шутку — 5 баллов.
Пусть тут повесит до завтра...
... << RSDN@Home 1.1.3 beta 1 >>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re: "Hello, world!" не компилируеться на VC 7.3
От: _master_ Россия  
Дата: 01.04.04 10:58
Оценка:
Эти Микрософтщики совсем с ума посходили. По-моему у Страуструпа ничего подключать совсем не надо. А на визуале программить, так очучение возникает, что и не на С++ вовсе пишешь.
Re[2]: "Hello, world!" не компилируеться на VC 7.3
От: Lorenzo_LAMAS  
Дата: 01.04.04 11:03
Оценка:
__>Эти Микрософтщики совсем с ума посходили. По-моему у Страуструпа ничего подключать совсем не надо. А на визуале программить, так очучение возникает, что и не на С++ вовсе пишешь.

Я вообще не понимаю, как это printf может быть макросом, учитывая, что он обязан быть определен в std
Of course, the code must be complete enough to compile and link.
Re[4]: "Hello, world!" не компилируеться на VC 7.3
От: Анатолий Широков СССР  
Дата: 01.04.04 11:08
Оценка:
Здравствуйте, Lorenzo_LAMAS, Вы писали:

А>>Вы явно не читали ISO/IEC 14882:2004. В соответствии с 17.4.1.2/4, этот заголовок является deprecated. Включать теперь нужно <stdio.hpp>.


L_L>Дайте цитату, пожалуйста. А что по этому поводу в ISO/IEC 14882:2005 ?


Там вообще отменили заголовки.
Re[4]: "Hello, world!" не компилируеться на VC 7.3
От: Аноним  
Дата: 01.04.04 11:31
Оценка:
Здравствуйте, Lorenzo_LAMAS, Вы писали:

А>>Вы явно не читали ISO/IEC 14882:2004. В соответствии с 17.4.1.2/4, этот заголовок является deprecated. Включать теперь нужно <stdio.hpp>.


L_L>Дайте цитату, пожалуйста.


Да что Вы пристали со своими цитатами... Будто не знаете, где revisions брать. Скачайте со страницы Эндрю Кёнига.
Re[3]: "Hello, world!" не компилируеться на VC 7.3
От: Vamp Россия  
Дата: 01.04.04 11:36
Оценка: 3 (1)
L_L>Я вообще не понимаю, как это printf может быть макросом, учитывая, что он обязан быть
определен в std

Это микрсофот-специфик расширение. Пространство имен для макросов.
Да здравствует мыло душистое и веревка пушистая.
Re[4]: "Hello, world!" не компилируеться на VC 7.3
От: Lorenzo_LAMAS  
Дата: 01.04.04 11:39
Оценка:
V>Это микрсофот-специфик расширение. Пространство имен для макросов.

Ага. И в качестве еще одного расширения — возможность наследования макросов.
Of course, the code must be complete enough to compile and link.
Re[5]: "Hello, world!" не компилируеться на VC 7.3
От: Vamp Россия  
Дата: 01.04.04 11:42
Оценка: 3 (1) :)
L_L>Ага. И в качестве еще одного расширения — возможность наследования макросов.
Бери круче.
Переопределение, перегрузка и шаблонные макросы. А также макросы-члены и виртуальные макросы.
Да здравствует мыло душистое и веревка пушистая.
Re[6]: "Hello, world!" не компилируеться на VC 7.3
От: Аноним  
Дата: 01.04.04 12:03
Оценка:
Здравствуйте, Vamp, Вы писали:

V>Переопределение, перегрузка и шаблонные макросы. А также макросы-члены и виртуальные макросы.


Указатели на макросы забыл.
Re[7]: "Hello, world!" не компилируеться на VC 7.3
От: Vamp Россия  
Дата: 01.04.04 12:05
Оценка:
А>Указатели на макросы забыл.
! Они недоступны в моей версии. Надо сервис пак устанавливать.
Да здравствует мыло душистое и веревка пушистая.
Re[7]: "Hello, world!" не компилируеться на VC 7.3
От: Kaa Украина http://blog.meta.ua/users/kaa/
Дата: 01.04.04 13:06
Оценка:
Здравствуйте, <Аноним>, Вы писали:

V>>Переопределение, перегрузка и шаблонные макросы. А также макросы-члены и виртуальные макросы.


А>Указатели на макросы забыл.

И на макросы-члены.

А вот интересно, виртуальное наследование макросов поддерживается? А что стандарт говорит по поводу значения sizeof() для пустых макросов?

Также, ходят слухи, что планируется совместимость VBA. Таким образом, сила С++ делает возможным вскорости появление полиморфных (!!!) макро-вирусов

Разработчики Comeau выпускают пилотную версию компилятора с поддержкой всех этих нововведений! Ай да молодцы, всегда впереди планеты всей.
Алексей Кирдин
Re[8]: "Hello, world!" не компилируеться на VC 7.3
От: Lorenzo_LAMAS  
Дата: 01.04.04 13:23
Оценка:
Kaa>Разработчики Comeau выпускают пилотную версию компилятора с поддержкой всех этих нововведений! Ай да молодцы, всегда впереди планеты всей.

Вас цинично обманули. Это ж расширения микрософта, на кой они Комо? Разве что в качестве подержки диалекта
Of course, the code must be complete enough to compile and link.
Re[5]: "Hello, world!" не компилируеться на VC 7.3
От: Sinclair Россия https://github.com/evilguest/
Дата: 01.04.04 15:48
Оценка:
Здравствуйте, Анатолий Широков, Вы писали:
АШ>Там вообще отменили заголовки.

Что, неужели наконец-то сделали автоматическое включение? Класс! Я уже задолбался — я теперьк плюсам возвращаюсь реже, чем версии компилеров выходят... И каждый раз мучительно вспоминаю, что где надо включить. А как сделали, кстати — там через хелп находятся нужные хидеры, или просто подбирают минимальный набор библиотечных, покрывающий все undefined symbol?
... << RSDN@Home 1.1.3 beta 2 >>
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Re[5]: "Hello, world!" не компилируеться на VC 7.3
От: ol-lv СССР https://youtu.be/DQDoYs6wHoo
Дата: 01.04.04 17:02
Оценка:
Здравствуйте, Lorenzo_LAMAS, Вы писали:

V>>Это микрсофот-специфик расширение. Пространство имен для макросов.


L_L>Ага. И в качестве еще одного расширения — возможность наследования макросов.

с множественным наследованием.. унаследовали от макроса и от его перегрузки (при уловии, что это не потомок) потом система случайным образом с вероятностью равной вероятности увидеть сегодня динозавра для отдельного экземпляра определяет следующий адрес джампа, апосля мы строим нейронную сеть год обучаем ее на примерах работы с софтом, после
подключаем ес забиваем в перфокарты с помощью долота и молотка, ну в крайнем случае зубами алгоритм по оптимизации работы системы садим того мамонта, тьфу слона, тьфу птиродактиля, которого увидели сегодня и пошла работа...
Compiler can be as trained AI but can't compose music.
Antheil piano jazz sonata. Я болен ПГМ.
Re[2]: "Hello, world!" не компилируеться на VC 7.3
От: DeadAdmin Латвия http://www.livejournal.com/users/dedmazaj
Дата: 06.04.04 12:47
Оценка:
"_master_" <26257@news.rsdn.ru> wrote in message news:590960@news.rsdn.ru...
> Эти Микрософтщики совсем с ума посходили. По-моему у Страуструпа ничего подключать совсем не надо. А на визуале программить, так очучение возникает, что и не на С++ вовсе пишешь.

Испоганили, блин, и сю, и плюсы...

--
Best Regardz,
DeadAdmin
Posted via RSDN NNTP Server 1.8 beta
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.