Bohdan
Не хочу громких фраз. Я просто маленький быдлокодер из Мухосранска, еще даже не студент. Мне можно.
Surreal
Не хочу громких фраз. Я просто маленький быдлокодер из Мухосранска, еще даже не студент. Мне можно.
В общем, я немного переписал вашу функцию. http://pastebin.com/TRrZAMda Основные идеи должны быть понятны, вроде. Код не компилировал, может и не работает\работает неправильно, но его хотя бы легче читать.
Surreal
Во, MSLDF можно вообще убрать, а HEALTH надо инициализировать 0 или чем вам надо.
Surreal
И непонятно еще зачем вы к результату strlen добавляете 1. Я оставил так, как было у вас.
Bohdan
Страх, что при значении >=1 не сработает)
Bohdan
Я вам очень благодарен. Но вопрос Вы так много места оставляете между участками кода. Оно будет работать?
Bohdan
В некоторых языках просто важен каждый пробел
Surreal
в main'е тоже замените 8 строк на массив из 8 строк - это первое. Второе: если строки будут вводиться с клавиатуры, то под них надо выделять память и хранить указатели на место хранения.
Dogma
Я вам очень благодарен. Но вопрос Вы так много места оставляете между участками кода. Оно будет работать?
Просто логическое разделение для того что бы код был более читабельным
Surreal
Я вам очень благодарен. Но вопрос Вы так много места оставляете между участками кода. Оно будет работать?
В C и C++ (и большинстве других ЯП) можете сколько угодно места оставлять.
Stanislav
только табы только хардкор
Dogma
только табы только хардкор
А при чем табы к логическому разделению участков кода?
Deleted Account
только табы только хардкор
табы для выравнивания, пробелы для отступов?
Surreal
Еще совет: следите за типами данных, которые используете. У вас там аккумуляция 8 signed char'ов [-128; 128) в unsigned char [0; 256) была. Не надо так.
Bohdan
Опять же, боюсь брать большие типы данных, чтоб не угробить что-то.
Bohdan
Оно же занимает пространство в памяти
Deleted Account
Bohdan
возьму какие-то long и на пустом месте будет заниамать много места, например
Deleted Account
Deleted Account
8bit risc и 1кб памяти что ли? :)
а ты умнож 1кб на бесконечность?.. довольно много, вот он и беспокоится.
pinnokio
а ты умнож 1кб на бесконечность?.. довольно много, вот он и беспокоится.
чтобы умножить на бесконенчость, нужно сначала поделить на 0
Dogma
табы для выравнивания, пробелы для отступов?
Большинство современных ide заменяет символ табуляции на 4 пробела
Habetdin
Большинство современных ide заменяет символ табуляции на 4 пробела
В большинстве IDE данное поведение настраивается
Dogma
Ну тащемта по моему так даже лучше
Surreal
Оно же занимает пространство в памяти
У вас на чем этот код будет работать? Я не думаю, что кто-то пострадает из-за лишних 3 байт. У вас, тем более, вместо 8 указателей в коде использовалось 8 * 40. Каждый указатель - это обычно 4 байта. Так что я из сэкономленных выделил 3 байта.
Dogma
чтобы умножить на бесконенчость, нужно сначала поделить на 0
число на бесконечность = неопределенность Зачем то делить на ноль?
sx ♍♌♒
Число на бесконечно большую = бесконечно малая
sx ♍♌♒
В пределе 0.
Dogma
Число на бесконечно большую = бесконечно малая
При делении, а там же умножение было
Deleted Account
В пределе 0.
мыумножаем жэ!
sx ♍♌♒
Простите.
Deleted Account
у него жэ объекты! память
pinnokio
фейнман, уходим =(
Bohdan
На счет передачи строк массивом. Так не получится. Поскольку, вся суть у передачи аргументов функции, среди которых будет 3-4 ненулевых и 4-5 нулевых строк. В зависимости от порядка передачи, они будут давать значение 0 или -1.
Surreal
И разберитесь зачем в C используют двумерные массивы для хранения строк. Пример: char *a = (char*)malloc(8 * sizeof(char)); // sizeof(char) тут в обычном случае не нужен, но для других типов нужен, поэтому приучайтесь. char b[2][8]; for (int i = 0; i < 7; ++i) { a[i] = i + 'a'; } a[7] = '\0'; memcpy(b[0], a, 8 * sizeof(char)); printf("\n%s\n", b[0]);
pinnokio
Куда?
во время и пространство, где умножение на бесконечность не дает неопределенность <________> и наверное существуют лимиты
sx ♍♌♒
Surreal, какой у тебя опыт программирования на Си?
Dogma
Ребят, можно вопрос. Есть один проект в котором использую boost::python. Проблема в том что если запускать собранное приложение на ПК без питона, то оно не запуститься. Что можно сделать дабы оное запускалось и без установленного питона
Surreal
почему нельзя просто сделать одномерный масив и в него скидывать указатель на чар?
Я это как пример показал человеку. Вы посмотрите на его изначальный код, где char *[8][40] и как это используется. Человек, очевидно, видел подобную запись, но не до конца разобрался.
Surreal
Я такое, кстати, и в продакшене видел. Если все строки одинаковой длины, то почему бы и нет?
Anonymous
Возможность статической линковки зависит от лицензий.
Dogma
Ну тащемта я рассматривала как embedded python так и статик линковку но видимо я не очень умею пользоваться гуглом если не смогла ни то ни другое заставить работать
Deleted Account
ну если эта зависимость нужна прсото потому что в проекте есть код который ненужный но написан, то его можно было бы не собирать
Deleted Account
но если нужный функционал на этом boost::python то это не годится
x86-64
Везде этот питон )
Evgenii
число на бесконечность = неопределенность Зачем то делить на ноль?
Число на бесконечность = бесконечность, если число не 0
Dogma
Ну тащемта это перепил Ren'Py на плюсы, хотя те же файлы для написания самих игр будут на том же питоне
Stanislav
Везде этот питон )
а себе взял mruby для ембеддед целей
Deleted Account
Число на бесконечность = бесконечность, если число не 0
я бы сказал ещё более бОльшая бесконечность чем была
Surreal
а себе взял mruby для ембеддед целей
Прививки сделали? К лотку приучили?
x86-64
Питона приучать к лотку?
pinnokio
я бы сказал ещё более бОльшая бесконечность чем была
моя бесконечность бесконечнее твоей бесконечности?
серёжа
Питона приучать к лотку?
>ruby >embedded Скорее уж, себя
Dogma
Ну если уж почти все готово то что поделать
Dogma
Ну блин
Dogma
Я в проект въехала когда код уже был почти готовый
Deleted Account
Deleted Account
Я в проект въехала когда код уже был почти готовый
нужно махать руками и показывать что это никуда не годится
Surreal
Питона приучать к лотку?
Все языки с gc надо к лотку приучать, если возможно. А то сидит он такой, бедный, переполненный уже весь и в самом неожиданном месте наделал кучу из своей кучи.
Dogma
Я лишь уже парюсь над тем что бы оно работало без питона