Всем здравствуйте!
У меня такой вопрос (извините за тупость).
Есть большое желание освоить Си.
У меня установен ASP 9.0
Какой язык Си там используется с, с++, с#?
Если не трудно, объясните в чем между ними разница?Книгу по какой разновидности Си мне читать, чтобы можно было компилить написанные програмки, хотябы простейшие, с помощью gcc version 3.3.2 20031022 (ASPLinux 3.3.2-1)ASP?
Сразу начать изучение KDevelop почемуто страшновато...
Спасибо.
Люди, ну пожалуйста, наставьте на путь истинный...:)
Ну разница в том, что это разные языки. Выбирай тот который больше подходит для твоих задач.
gcc с# насколько я помню - непонимает
с/с++ разница большая - один это просто читый c, второй обьектный , разница - идеологии разные
книг по c я последнее время ненаблюдаю
но по c++ сечас полно - выбирайте любую - читайте пробудет писать примеры - важный момнет - не прочитать книгу и выполнить правильно примеры а понять что таоке обьектно ориентированый подход к программированию - если вы этого не поймете - программирование не ваша стихя)) бросайте и пробуйте что то другое perl,sql,php,java
>
>
>gcc с# насколько я помню - непонимает
>с/с++ разница большая - один это просто читый c, второй обьектный
>, разница - идеологии разные
>
>
>книг по c я последнее время ненаблюдаю
>но по c++ сечас полно - выбирайте любую - читайте пробудет
>писать примеры - важный момнет - не прочитать книгу и выполнить
>правильно примеры а понять что таоке обьектно ориентированый подход к программированию
>- если вы этого не поймете - программирование не ваша стихя))
>бросайте и пробуйте что то другое perl,sql,php,javaОткуда такое поклонение перед ООП? И мне понравилась последняя строчка. про php умолчу -- не знаю -- но perl, java -- ОО языки не меньше (а то и больше) чем C++
И вообще зачем человека путать? Как будто сложно по человечески ответить:
"учи C. Освоишься будешь дальше думать."
>Откуда такое поклонение перед ООП? И мне понравилась последняя строчка. про php
поклонение? бррр непонял смысла фразы>умолчу -- не знаю -- но perl, java -- ОО языки
>не меньше (а то и больше) чем C++я привел пример куда куда стоит уйти если непоймет принципов C/C++
не спорю - perl, java немножно ООП но никак не полностью - читайте,учите
>
>И вообще зачем человека путать? Как будто сложно по человечески ответить:
>"учи C. Освоишься будешь дальше думать."название темы какой Си выбать - я рассказал наиболее кратко и емко - дальше пусть сам выбирает
>>Откуда такое поклонение перед ООП? И мне понравилась последняя строчка. про php
> поклонение? бррр непонял смысла фразы
>
>>умолчу -- не знаю -- но perl, java -- ОО языки
>>не меньше (а то и больше) чем C++
>
> я привел пример куда куда стоит уйти если непоймет принципов
>C/C++
>
> не спорю - perl, java немножно ООП но никак
>не полностью - читайте,учите
java - немножко ООП :))
какие тогда по вашему ОО-языки?
>java - немножко ООП :))
>какие тогда по вашему ОО-языки?ADA ;]
c# поддерживается в gcc
с - не ООП.
Изучать лучше начать с c, потом с++, а c# вообще от лукавого.
Керниган Ричи, Страуструп, ну и тд...
>c# поддерживается в gcc
Извиняюсь перепутал с Objective C, его я тоже видел только во сне
>Изучать лучше начать с c, потом с++В корне неверный подход ИМХО.
большинство (моих знакомых) программистов изучавших изначально С, но пишущие сейчас С++ так и остались программистами на С :(
>c# поддерживается в gcc
>с - не ООП.
>Изучать лучше начать с c, потом с++, а c# вообще от лукавого.
>
>Керниган Ричи, Страуструп, ну и тд...C# - таки да, от лукавого.
Cи++ и Си - совершенно разные языки, разные методологии программирования, абсолютно. Зачем учить Си, а потом Си++, чтобы программировать на си с классами? :) К тому же Си++ программисты, в прошлом сишники - очень плохие Си++ программисты.
>Cи++ и Си - совершенно разные языки, разные методологии программирования, абсолютно. Зачем
>учить Си, а потом Си++, чтобы программировать на си с классами?Не познав Си ,приступать к изучению С++ - это полная Ж...
С++ является надмножеством Си.>:) К тому же Си++ программисты, в прошлом сишники - очень
>плохие Си++ программисты.Хорошая шутка :)
>>Cи++ и Си - совершенно разные языки, разные методологии программирования, абсолютно. Зачем
>>учить Си, а потом Си++, чтобы программировать на си с классами?
>
>Не познав Си ,приступать к изучению С++ - это полная Ж...
>С++ является надмножеством Си.да. но это не мешает им при этом быть СОВЕРШЕННО РАЗЛИЧНЫМИ ЯЗЫКАМИ.
С++ - это не "С, в который что-то добавлено" (а именно так и рассматривают его большинство тех, кто ранее программировал на С). И методы программирования на них совершенно различны.
>Откуда такое поклонение перед ООП?понятие объекта
>про php умолчу -- не знаю -- но perl, java -- ОО языки не меньше (а то и больше) чем C++
реализация oop в perl мягко скажем кривенькая
>И вообще зачем человека путать? Как будто сложно по человечески ответить:
>"учи C. Освоишься будешь дальше думать."Учи с++. Освоишься и будешь думать над задачей а не над кодом.
>Какой язык Си там используется с, с++, с#?
>Если не трудно, объясните в чем между ними разница?С++ - однозначно, ибо рулез!!!
С++ является надмножеством С, т.е. любая С-шная конструкция приемлема в С.
С++ имеет ООП, и кучу своих уже реализованных классов (STL к примеру)
С++ просто удобнее чем С, код на нем понятнее
С++ проще для новичка чем С (ну хотя-бы взять cout << и printf)С - базовый язык, идеально подходит для написания ядра ОС, и вобщем-то именно для этого и был разработан
С# - это слегка видоизмененная java от MS. а java - отдельная песня.
Objective C - даже во сне не встречал :)
>>Какой язык Си там используется с, с++, с#?
>>Если не трудно, объясните в чем между ними разница?
>
>С++ - однозначно, ибо рулез!!!<подставить> - однозначно, ибо рулез! Это не аргумент.
>С++ проще для новичка чем С (ну хотя-бы взять cout <<
>и printf)А по мне так printf() на порядок понятнее, сразу видно что выводить и как.
cout имеет слишком много "если, то".
>С++ является надмножеством С, т.е. любая С-шная конструкция приемлема в С.Формально, с принятием стандарта C99 это уже не так.
В этом стандарте описаны новые встроенные типы данных, которых нет в _действующем_ стандарте C++.Так что не любая конструкция C теперь применима в C++, а "почти любая" ;)
Одно хорошо: в C куча унаследованного кода в который никто новые фичи языка писать не будет.
Да и надеюсь в новом стандарте C++ учтут изменения в C.
>>С++ является надмножеством С, т.е. любая С-шная конструкция приемлема в С.
>
>Формально, с принятием стандарта C99 это уже не так.
>В этом стандарте описаны новые встроенные типы данных, которых нет в _действующем_
>стандарте C++.Может пример приведете?
>>>С++ является надмножеством С, т.е. любая С-шная конструкция приемлема в С.
>>
>>Формально, с принятием стандарта C99 это уже не так.
>>В этом стандарте описаны новые встроенные типы данных, которых нет в _действующем_
>>стандарте C++.
>
>Может пример приведете?например типы _Complex и _Bool :) .
Причем возможно такое объявление переменной:
float _Complex var1;
или
long double _Complex var2;
>Всем здравствуйте!
>У меня такой вопрос (извините за тупость).
>Есть большое желание освоить Си.
хорошое желание>У меня установен ASP 9.0
>Какой язык Си там используется с, с++, с#?
с, c++>Если не трудно, объясните в чем между ними разница?
идеологией, подходами к прогарммированию, разные задачи - разные c/c++>
>Книгу по какой разновидности Си мне читать, чтобы можно было компилить написанные
>програмки, хотябы простейшие, с помощью gcc version 3.3.2 20031022 (ASPLinux 3.3.2-1)ASP?
gcc компилятор понимает как c так и с++ выбор что читать за вами
все зависит от того для чего вы решили заняться изучением c/c++ - какой круг задач вы собираетесь решать с помощью этого языка ? соответсвенно и раный подоход и разный си>
>Сразу начать изучение KDevelop почемуто страшновато...
KDevelop это среда для написанию - что то типа VisualStudio
если вы среду разработки собираетесь учить - то си там ненуженKDevelop насколько я знаю разработан для библиотеки qt которая построена на основах c++
если вы ее собирались изучать и использовать то ищите любую книгу для c++
немного основ вам хватит - а дальше можете изучать саму библиотеку и работу с нейPS
если захотите стать хорошим программистом (приложений верхнего уровня) изучите хорошенько c++вообщем то на сегодняшний момент только 2 типа программистом пишут на чистом С
1 тип) неграмотные программисты
2 тип) программ кторые пишут ядра OS, drivers etc касающееся низкого уровня программирования
>Спасибо.
пожалуста
> вообщем то на сегодняшний момент
>только 2 типа программистом пишут на чистом С
> 1 тип) неграмотные программистыГлупость несуразная. Как у Вас вообще повернулся язык назвать Wietse Venema (разработчика postfix, tcpwrappers, etc) неграмотным программистом ?!
Hint: настоятельно рекомендую код postfix для изучения.
Опять началось флеймогенерирование. Прямо ЛОР какой-то.Истина в том, что для одних задач удобнее использовать один язык, а для других - другой.
Нельзя спрашивать: "какой язык лучше".
Надо спрашивать: "какой язык лучше для такой-то задачи".
Доказательство: возьмем два разных языка, например Ассемблер и SQL. Ответьте на вопрос "какой язык лучше". Как видите, такой вопос не имеет смысла - так как языки очень разные. Теперь ответьте на вопрос "какой язык лучше для программирования ata-контроллера" или "какой язык лучше для того, чтобы извлеч из базы данных нужную мне информацию"Вам надо решить, какие задачи Вы собираетесь решать. Если касаться языков С и С++, то имеет смысл читать про оба языка, тем более, что они во многих вещах очень похожи. Вообще, по моему мнению, С++ больше подходит для написания больших программ сообществом программистов, так как при правильном подходе код на С++ получается более защищенным от "дурака", чем код на С. С другой стороны, код на С работает быстрее кода на С++ (в силу того, что в каждый вызов нестатического метода класса С++ передается указатель this) и проще сопрягается с кодом на Ассемблере (так как при использовании С++ компилятор вносит изменения в имена функций-членов, причем эти изменения не стандартизированы (!!!) и различны для разных компиляторов. В С такого бардака не наблюдается).
Вам также надо честно себе ответить на такой вопрос, как ваша программистская квалификация, и, исходя из этого, подбирать себе учебники. На мой взгляд, для новичка наиболее ценной будет такая книга, где все понятно для него написано.
>и проще сопрягается с
>кодом на Ассемблере (так как при использовании С++ компилятор вносит изменения
>в имена функций-членов, причем эти изменения не стандартизированы (!!!) и различны
>для разных компиляторов. В С такого бардака не наблюдается).Так вроде extern "C" никто не отменял ;)
казнить нельзя помиловатьPS: я сказал как сказал - а то как каждый человек понял эти слова это его сторона жизни
давайте не флудить - тема помоему давно уже закрыта ... чел утопал на рынок искать книгу :))))
>Всем здравствуйте!
>У меня такой вопрос (извините за тупость).
>Есть большое желание освоить Си.
>У меня установен ASP 9.0
>Какой язык Си там используется с, с++, с#?
>Если не трудно, объясните в чем между ними разница?
>
>Книгу по какой разновидности Си мне читать, чтобы можно было компилить написанные
>програмки, хотябы простейшие, с помощью gcc version 3.3.2 20031022 (ASPLinux 3.3.2-1)ASP?
>
>Сразу начать изучение KDevelop почемуто страшновато...
>Спасибо.Начни с ANSI C.
В *nix'ах это основной язык - хочешь писать ядро - изучай C. В C не будет проблем с линковкой gas'а. Почитай учебник от Кернигана на lib.ru. Вместо KDevelop используй чего-нибудь терминальное, хотя-бы на первых порах. Я сначала пользовался kate'ом, но теперь пишу в vim'е, а компилирую макросом. Не забудь сменить систему на *bsd.