
Anton
10.05.2017
14:19:36
И есть)

Tema
10.05.2017
14:19:51

Alex Фэils?︙
10.05.2017
14:20:02

Tema
10.05.2017
14:21:17

Google

Anton
10.05.2017
14:21:28
Можно было бы и выставить WTFPL, правда.

Tema
10.05.2017
14:23:26
но там не всё в порядке с цветами
+ я её потихоньку перевожу на atom

Nikolai
10.05.2017
14:25:03

Tema
10.05.2017
14:25:12

Nikolai
10.05.2017
14:25:28
И всего? Зато атом тупит с прокруткой, а сабик нет

Tema
10.05.2017
14:25:42
возможно чота невстретил ещё

Anton
10.05.2017
14:25:50

Nikolai
10.05.2017
14:25:56
На старых машинках атом вообще в стопор ставит процессор)

Google

Nikolai
10.05.2017
14:26:08
Там 2 пути - саблайм или вим

Tema
10.05.2017
14:26:16
и вся тема поехала

Nikolai
10.05.2017
14:27:34
У меня сейчас другая проблема - я пытаюсб реализовать GoTosymbol в виме как это сделано в саблайме - пока неудачно( А все что реализовали плагинами до тошноты неюзабельно и с багами

Tema
10.05.2017
14:27:52

Nikolai
10.05.2017
14:28:05
Без внешних утилит

Tema
10.05.2017
14:28:20
? у нас тут обсуждение IDE которое запрещено

Nikolai
10.05.2017
14:29:25

Tema
10.05.2017
14:30:00
а чего на вим пересел?

Nikolai
10.05.2017
14:30:36
а чего на вим пересел?
слепую печать освоил) Да и на машинке очень слабой приходится в рантайме отлаживать. Там саблайм не поставишь

Alexander
10.05.2017
14:32:33

Nikolai
10.05.2017
14:33:51
мда, видать зажрался я со своими IDE на Java)
IDE вещь классная, в том плане что хороший коплит, интенд и т.д. для языка дает и очень сильно облегчает жизнь разрабу из коробки, но есть ситуации когда ты очень ограничен в ресурсах и тогда приходиться изобретать велосипед

Tema
10.05.2017
14:34:55

Будда
10.05.2017
19:06:34
Хорошего вечера. Нужен совет,
Как правильно написать функцию nameOfLib, чтобы файл создавался правильно.
Работает, если вместо функции писать:
int endOfName = 0;
printf("What name of library : ");
while((temp[endOfName] = getchar()) != '\n')
endOfName++;
ask = endOfName;
Первый скриншот - работает правильно.
Второй скриншот - сами видите.
https://pastebin.com/VNs5Ytfs

Александр
10.05.2017
19:08:39
после цикла
temp[endOfName] = '\0';
а вообще, с этим в #supapro

Google

Александр
10.05.2017
19:09:32
#supapro

Group Butler [beta]
10.05.2017
19:09:34
#supapro
Чат supapro.cxx: https://telegram.me/joinchat/BYlFbD3eN3JMaG34hyh96w

Будда
10.05.2017
19:10:29

Александр
10.05.2017
19:11:58
SIZE_OF_LIB_NAME = ?

Будда
10.05.2017
19:12:08
Нет.
Вся функция, как и ее замена - костыль. Замена работает, функция нет.
То что вы предлагаете работать не будет =)

Александр
10.05.2017
19:12:45
char name[ask]; так нельзя в C++

Будда
10.05.2017
19:13:32
константа, 60.
Ограничение размера имени
Суть в том, чтобы ненужная часть имени отбрасывалась

Александр
10.05.2017
19:13:59

Будда
10.05.2017
19:14:29

Александр
10.05.2017
19:15:35
и return endOfName + 1;
ну или здесь strncpy(name, temp, ask+1);

Будда
10.05.2017
19:16:19
Тоже было)

Александр
10.05.2017
19:17:03
должно быть всё вместе. функция в текущем варианте возвращает кол-во считанных букв, не прописывает завершающий ноль и копирует строку без него же

Будда
10.05.2017
19:18:50
Ладно. Есть ли возможность правильно возращать строку имени, если не знаешь сколько ему(имени) нужно будет памяти?

Александр
10.05.2017
19:19:33
да, пользоваться динамическим выделением и realloc'ом при надобности
задание на си или с++?

Google

Будда
10.05.2017
19:20:21
На си. Пишу для себя, ни задание, ни робота)
Спасибо, попробую и отпишусь
Работает, но не так как хотелось бы. Спасибо вам, буду все по-новой писать)

ovf
10.05.2017
19:24:15
если это имя файла, особенно без пути, то у него есть вполне физические ограничения на длину, не надо для него ничего динамически выделять. см, скажем, PATH_MAX в limits.h

Admin
ERROR: S client not available

Будда
10.05.2017
19:25:01
мне надо передать строку в fopen =)
а под строку и нужна память

ovf
10.05.2017
19:25:13
(и да, на большинстве систем путь может быть длиннее PATH_MAX, но у пользователя с такими путями проблемы возникнут задолго до того, как он воспользуется твоим кодом)
ну так всё правильно, только вместо SIZE_OF_LIB_NAME используй PATH_MAX. ну а про как читать строчку тебе выше уже вроде рассказали.
кстати, обычно оказывается, что вводить данные в программы (особенно пути к файлам) удобнее не в режиме диалога, а заранее, поэтому эту строчку лучше прочитать из аргументов командной строки (argv)

Будда
10.05.2017
19:27:41
Но ведь PATH_MAX будет занимать намного больше памяти, чем нужно названию библиотеки?

ovf
10.05.2017
19:28:50
пользователь может сразу придумать имя

Александр
10.05.2017
19:29:15
PATH_MAX - это не такая огромная константа, чтобы переживать за память. На стеке уж точно поместится

ovf
10.05.2017
19:29:35
будет занимать больше памяти (скажем, 1KB), но служебная информация аллокатора памяти, который тебе выделит твои 60 байт, займёт больше

Будда
10.05.2017
19:30:14
А где можно об этом подробнее узначть/прочитать?

ovf
10.05.2017
19:31:09
об этом -- это о чём? как экономить память? http://www.smallmemory.com/book.html

Будда
10.05.2017
19:31:52

ovf
10.05.2017
19:32:28
но к современным персональным компьютерам это всё не очень относится. твоей программе ос выделила уже несколько мегабайт только на стек, поэтому можно оттуда спокойно брать свои несчастные килобайты

Будда
10.05.2017
19:33:03
я параноик)

Google

ovf
10.05.2017
19:33:38
ну про аллокатор -- прочитать любую книжку про аллокаторы
или лучше университетский курс

Nikita
10.05.2017
19:34:30
Всем счастливо! Было приятно вас читать.

Скрудж
10.05.2017
19:35:17

Будда
10.05.2017
19:35:19

ovf
10.05.2017
19:35:23
в частности даже только что упоминавшаяся книга годится: http://www.smallmemory.com/6_AllocationChapter.pdf

Vladislav
10.05.2017
19:35:34

ovf
10.05.2017
19:36:18
но вообще сначала рекомендую научиться писать корректный код. :-)

Будда
10.05.2017
19:37:20

ovf
10.05.2017
19:42:58
ну конкретно про представленный код обсудили ораторы выше. а вообще это было пожелание на будущее.

Будда
10.05.2017
19:43:23
Спасибо)

Vladislav
10.05.2017
19:45:52
надо обращать внимание на валидацию входящих данных и обработку ошибок

Будда
10.05.2017
19:47:04
Спасибо за помощь и спокойной ночи)