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

С + + и Visual C + + и чем они отличаются? Есть ли их изучение взаимно дополняющее или это совсем разные языки? - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Где деструкторы? http://www.cyberforum.ru/cpp-beginners/thread608047.html
Ребят сижу разбираю код на С++,не могу понять где диструктор тут.. #include <vcl.h> #pragma hdrstop #include "Unit1.h" #include "math.h" #pragma package(smart_init) #pragma resource "*.dfm" //---------------------------------------------------------------------------
C++ Явное преобразование типов class CLSObj { void abc(int d){ ... } ... }; int main() { char *p; CLSObj obj; http://www.cyberforum.ru/cpp-beginners/thread608044.html
как count endl заменить на printf ? C++
Всем добрый вечер , есть одна программа , там встречаются строчки . Собственно вопрос , как будут выглядеть эти строчки с использованием printf . cout << "х" << i << "=" << xn << endl; i++; cout << "x" << i << "=" << xk << endl; i++; }
C++ Не могу разобраться в формуле
Пишу программу про шифр Виженера http://*******/oiwOo . codestr = (str + key) % 26 - набросок формулы для шифрования. str = (codestr - key + 26) % 26 - дешифрование. На данном форуме нашел похожую тему http://www.cyberforum.ru/c-beginners/thread276119.html с такими формулами: codeStr = (str + key - 2*'a') % 26 + 'a'; str = (codeStr - key + 26) % 26 + 'a'; Не могу понять использование -2*'a'...
C++ Неинициализированные переменные http://www.cyberforum.ru/cpp-beginners/thread607990.html
пишет типа не инициализированы d1 и d2,хотя они объявлены#include "iostream" using namespace std; struct Distance { int feet; float inches; }; int main() {
C++ MSVS 2010 Hello world Скачал Vidual Studio 2010 Express, создал проект, скопипастил туда Helloworld. Компиляция завершилась ошибкой. При чем окон с ошибкой я так и не увидел. Неужели в Visual C++ Синтаксис отличный от C++? подробнее

Показать сообщение отдельно
Evg
Эксперт С++Автор FAQ
 Аватар для Evg
16933 / 5338 / 328
Регистрация: 30.03.2009
Сообщений: 14,339
Записей в блоге: 26
25.06.2012, 00:00     С + + и Visual C + + и чем они отличаются? Есть ли их изучение взаимно дополняющее или это совсем разные языки?
Цитата Сообщение от Avazart Посмотреть сообщение
Ну да, сборищик мусора для того же... ну и C#...
Да нет, тут дело не в сборщиках мусора, а в отсутствии контроля за границей допустимой памяти во всяких функциях типа strcpy

Цитата Сообщение от CyBOSSeR Посмотреть сообщение
И добавить новые типичные ошибки.
C++
1
2
std::string str = "blabla";
printf("%s", str);
Работает в студии, хоть и противоречит здравому смыслу и падает в том же GCC.
А где тут ошибка? Просто при передаче класс передаётся по косвенности, а класс устроен так, что первое поле класса - массив char'ов. В итоге получается, что printf достаёт строку, как будто передавался указатель на массив char'ов. Ну или что-то около того. Собственно, функция printf является опасной (как и любая функция с vararg'ами), а потому такие эффекты - это нормально

Добавлено через 2 минуты
Цитата Сообщение от Avazart Посмотреть сообщение
Пробовал на трех компилятора данный код
VC2010 выдает иероглефы
Builder2009 никак не регирует, как будто просто этих строчек нет
QtCreator заканчивается окошком "прекращение работы программы" т.е краш.
Потому что в run-time поддержке компиляторов разная реализация внутренностей класса string

Цитата Сообщение от Avazart Посмотреть сообщение
По хорошему должна быть ошибка или хотябы ворнинг...
gcc точно умеет выдавать ворнинг по -Wall. Думаю, что и остальные умеют

Цитата Сообщение от Avazart Посмотреть сообщение
И краш явно не лучший вариант...
Если программа написана криво, то при чём тут компилятор?
 
Текущее время: 01:20. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru