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

C++ to C converter (OOP C) - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ H323Plus + PTLib: PDU Read Error: Timed Out на приемном канале http://www.cyberforum.ru/cpp/thread1845334.html
Здравствуйте товарищи, помогите кто чем может разобраться с ошибкой. Анамнез: Есть самописная софтина которая должна осуществлять телефонную связь с удаленным терминалом по протоколу H.323. При...
C++ Структура с не известными переменными Добрый вечер. Допустим есть структура (не моя) с некоторыми переменными. Можно ли сделать свою структуру, но, при этом заранее указать переменным этой структуры нужное смещение? Пример: ... http://www.cyberforum.ru/cpp/thread1844681.html
C++ Стандарт C++ вышел на русском
Небезызвестный Евгений Зуев выполнил таки свое обещание и перевел Стандарт. Книжка доступна только (настолько мне известно) здесь. Цена кусается, мнения у всех по этому вопросу разные. Смотрите...
Как разреженную матрицу перевести в формат CRS? C++
Привет кодеры! Моя задача заключается в том чтобы перемножить две разреженные матрицы. Но для того чтобы это сделать нужно эти матрицы привести к виду CRS. Я весь день а то и два не могу понять как...
C++ Как пишут программы благодаря которым можно управлять объектами? http://www.cyberforum.ru/cpp/thread1843292.html
Как пишут программы при помощи которых можно управлять предметами у себя дома? Например, когда кто-то откроет холодильник, придет сообщение на смартфон или компьютер о том то что холодильник был...
C++ При считывании данных из файла дописываются лишние симолы Здравствуйте. Пишу класс для работы с файлами на базе winapi. Столкнулся с проблемой. Описываю свои действия. 1)Создаю файл 1.txt с текстом "Hello". 2)Пишу следующий код в main.cpp #include... подробнее

Показать сообщение отдельно
Joint14
0 / 0 / 0
Регистрация: 17.12.2013
Сообщений: 26
10.11.2016, 11:06  [ТС]
Спасибо! Уже ближе. https://isocpp.org/wiki/faq/compiler-dependencies
Is it possible to convert C++ to C?

Depends on what you mean. If you mean, Is it possible to convert C++ to readable and maintainable C-code? then sorry, the answer is No — C++ features don’t directly map to C, plus the generated C code is not intended for humans to follow. If instead you mean, Are there compilers which convert C++ to C for the purpose of compiling onto a platform that yet doesn’t have a C++ compiler? then you’re in luck — keep reading.

A compiler which compiles C++ to C does full syntax and semantic checking on the program, and just happens to use C code as a way of generating object code. Such a compiler is not merely some kind of fancy macro processor. (And please don’t email me claiming these are preprocessors — they are not — they are full compilers.) It is possible to implement all of the features of ISO Standard C++ by translation to C, and except for exception handling, it typically results in object code with efficiency comparable to that of the code generated by a conventional C++ compiler.

Here are some products that perform compilation to C (note: if you know of any other products that do this, please let us know):

Comeau Computing offers a compiler based on Edison Design Group’s front end that outputs C code.
LLVM is a downloadable compiler that emits C code. See also here and here.
Cfront, the original implementation of C++, done by Bjarne Stroustrup and others at AT&T, generates C code. However it has two problems: it’s been difficult to obtain a license since the mid 90s when it started going through a maze of ownership changes, and development ceased at that same time and so it doesn’t get bug fixes and doesn’t support any of the newer language features (e.g., exceptions, namespaces, RTTI, member templates).
Contrary to popular myth, as of this writing there is no version of g++ that translates C++ to C. Such a thing seems to be doable, but I am not aware that anyone has actually done it (yet).

Note that you typically need to specify the target platform’s CPU, OS and C compiler so that the generated C code will be specifically targeted for this platform. This means: (a) you probably can’t take the C code generated for platform X and compile it on platform Y; and (b) it’ll be difficult to do the translation yourself — it’ll probably be a lot cheaper/safer with one of these tools.

One more time: do not email me saying these are just preprocessors — they are not — they are compilers.
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru