А зачем начинающему программисту на с/с++ нужны юнионы и битовые маски в структурах?
И вообще это по моему не учебник длятупых начинающих, а размазанный справочник. Мне бы такой временами не помешал для всяких руби, пхп, c# или там вб. Все время забываешь, как там обьявить что-то вроде массива.
И вообще это по моему не учебник для
раскрыть ветку (53)
раскрыть ветку (1)
Я обычно гуглю "%language% array" к примеру. Злой начальник увез цветной принтер в другой офис и мне лень туда ездить, чтобы напечать всю эту муру.
Ты ещё посмотри, как автор выводит строки через строки в строковой printf. Я даже не знаю, как это назвать - может, графоманством?
Да и вообще - какие, нафиг, calloc, free, указатели? Зачем это нужно начинающему? Даже не зная подобного можно писать неплохие программы, да, они не будут оптимальны, но они всё равно будут работать!
Да и вообще - какие, нафиг, calloc, free, указатели? Зачем это нужно начинающему? Даже не зная подобного можно писать неплохие программы, да, они не будут оптимальны, но они всё равно будут работать!
раскрыть ветку (50)
>Ты ещё посмотри, как автор выводит строки через строки в строковой printf. Я даже не знаю, как это назвать - может, графоманством?
Вы что, хотите сказать, что надо printf(s)?
Тогда у меня для вас плохие новости, такой вариант небезопасен, так как если s пришло от пользователя, то он сможет получить содержимое всего стека
Вы что, хотите сказать, что надо printf(s)?
Тогда у меня для вас плохие новости, такой вариант небезопасен, так как если s пришло от пользователя, то он сможет получить содержимое всего стека
Я вот только за принтфы и сканфы, я их люблю, не то, что все эти ваши потоки, тьфу.
Указатели - часть с++ в общем-то, хотя поначалу можно и без них, конечно-же.
Указатели - часть с++ в общем-то, хотя поначалу можно и без них, конечно-же.
раскрыть ветку (47)
ещё комментарии
раскрыть ветку (45)
раскрыть ветку (44)
раскрыть ветку (13)
это не умаляет того факта, что есть практическая разница между C и C++. К тому же, в посте речь идет о C
раскрыть ветку (12)
раскрыть ветку (11)
раскрыть ветку (9)
Это лишь то, что добавили в С++. Практическая разница нужна. Скажем, могу ли я сделать так?
class MyClass
{
char *str;
MyClass()
{
str = (char*)calloc(...);
}
...
}
class MyClass
{
char *str;
MyClass()
{
str = (char*)calloc(...);
}
...
}
раскрыть ветку (8)
1. Киньте мне ссыль или название комплиятора С.
2. Какая разница в примерах в этой задаче если мы будем писать на с или на с++?
3. Ну и вообще, чего в с++ есть? Шаблоны и классы, то есть синтаксический сахар по большому-то счету.
2. Какая разница в примерах в этой задаче если мы будем писать на с или на с++?
3. Ну и вообще, чего в с++ есть? Шаблоны и классы, то есть синтаксический сахар по большому-то счету.
раскрыть ветку (29)
1. gcc
2. в примерах никакой, за исключением того, что автор изначально говорил про C
3. классы, шаблоны, исключения, пространства имен, new/delete, ссылки. и да, я не считаю шаблоны и классы синтаксическим сахаром.
2. в примерах никакой, за исключением того, что автор изначально говорил про C
3. классы, шаблоны, исключения, пространства имен, new/delete, ссылки. и да, я не считаю шаблоны и классы синтаксическим сахаром.
раскрыть ветку (22)
Это синтаксический сахар. Классы к примеру через жопу, но можно реализовать через структуры, даже гибче получится. Шаблоны - это просто офигенный, но сахар. Без него или с ним язык не преобретает новый функционал (к примеру от классов хоть немного, но преобретает), и вообще шаблоны - мощная замена для препроцессора.
раскрыть ветку (21)
раскрыть ветку (20)
Ну к примеру заводим структуру из данных + несколько указателей на функции, заменяющих собой методы класса. В функции-инициализаторе присваиваем этим полям указатели на нужные функции и получаем полиморфизм. Причем мы прямо на лету можем менять методы на другие. В ооп это реализуется через визитера или еще какие паттерны.
Наследование - просто включаем другие структуры в новую. Можно стрроить не дерево или однонаправленную сеть, как в классах и интерфейсах, а вообще практически произвольные структуры.
Инкапсуляция - синтаксический сахар, компилятор ругается на то, что что-то там приватное, иди отсюда, не дамся.
И вуаля - на структурах и указателях мы построили кривой ооп.
Наследование - просто включаем другие структуры в новую. Можно стрроить не дерево или однонаправленную сеть, как в классах и интерфейсах, а вообще практически произвольные структуры.
Инкапсуляция - синтаксический сахар, компилятор ругается на то, что что-то там приватное, иди отсюда, не дамся.
И вуаля - на структурах и указателях мы построили кривой ооп.
раскрыть ветку (19)
1. Онлайн - компилятор для Си: http://www.compileonline.com/compile_c_online.php
2. В среде для С++ должны работать без проблем.
3. ООП, это очень обширная тема.
2. В среде для С++ должны работать без проблем.
3. ООП, это очень обширная тема.
раскрыть ветку (5)
1. Ема. До чего дошли. В вебе компилер на С. С ума сойти.
3. ООП это слова класс, виртуал, абстракт (=0) и приват-паблик. Больше ничего.
Шаблоны - это слово темплейт, скобачки и все.
3. ООП это слова класс, виртуал, абстракт (=0) и приват-паблик. Больше ничего.
Шаблоны - это слово темплейт, скобачки и все.
раскрыть ветку (4)
Множество сложных, эффективных и интересных подходов реализуются с ООП. Советую вникнуть :)
раскрыть ветку (1)
Ну а с синтаксической точки зрения я ничего не забыл?
Я прекрасно знаю половину паттернов гоф и даже треть активно использую, но в языке-то больше ничего от ооп нету.
Я прекрасно знаю половину паттернов гоф и даже треть активно использую, но в языке-то больше ничего от ооп нету.
раскрыть ветку (1)
Правда чтоль, а я то и не знал.
Наследование - часть слова класс. Инкапсуляция это паблик-приват и вообще уже было в структуре (с видимостью паблик), полиморфизм - виртуальные функции. И что-же я забыл-то.
Наследование - часть слова класс. Инкапсуляция это паблик-приват и вообще уже было в структуре (с видимостью паблик), полиморфизм - виртуальные функции. И что-же я забыл-то.
ещё комментарии
ещё комментарии


