Sergey
Разыменовываешь и получаешь символ
Sergey
типа того
🦥Alex Fails
Sergey
ну это ж учебный пример
🦥Alex Fails
Ага
Sergey
Похер, что неоч и небезопасно
🦥Alex Fails
Нее
🦥Alex Fails
Вот на это никогда нн должно быть похер
🦥Alex Fails
Даже в учебных примерах
Андрей
🦥Alex Fails
/// тут безопаснее
const size_t N = 100;
char str1[N] = "bla lablabka10224289044", str2[N] = {0}; //делаем одинакового размера, чтоб не вылезти за пределы массива
size_t i1 = 0; // индекс записи
char *ptr = str1;
char *ptr_end = str1 + 100;
while(ptr < ptr_end && *ptr) { // пока не ройдем по всей строке, мли пока не кончатся символы
ptr = strpbrk(ptr, "0123456789"); // ищем цифры
if (!ptr) {
break;
}
str2[i1++] = *ptr; // пишем цифру (символ цифры!)
ptr++;
}
Anonymous
Ребята, с доступом к IOS с PC никто не работал?
Андрей
Anonymous
Доступом к файловой системе
🦥Alex Fails
есть syncios
🦥Alex Fails
она чето из тунца юзает
🦥Alex Fails
и можно в ифон писать инфу
Anonymous
мне библиотеку бы)
Anonymous
goto - зло?
Андрей
Проблема в том, что люди не умеют его использовать.
Anonymous
Но злом оно является в руках ребенка?
Андрей
Anonymous
использую goto регулярно
Anonymous
на работе
Андрей
Кроме как выхода из вложенных циклов редко когда нужен.
Anonymous
нужен для обработки ошибок
Anonymous
регулярно и часто
🦥Alex Fails
очень просто
🦥Alex Fails
ща покажу
Anonymous
Anonymous
Anonymous
Тратить ресурсы лишние, ЗАТО БЕЗ ГОТО!!
Андрей
Ага, goto - зло, поэтому будем jmp использовать)
Anonymous
http://lxr.free-electrons.com/source/mm/msync.c#L40
Андрей
Блин, if без скобок...
🦥Alex Fails
void some_fn() {
void *h1, *h2, *h3;
void* h1 = init_huita1();
if(!h1)
return -1;
h2 = init_huita2();
if(!h2) goto clean_h1;
h3 = init_huita3();
if(!h3) goto clean_h2;
/* еще сотни тыщ такой хуиты */
clean_h2:
clean_huita(h2);
clean_h1:
clean_huidta(h1);
}
Андрей
Anonymous
Андрей
🦥Alex Fails
Я так и делаю
🦥Alex Fails
Если в функции только один раз встречаются вложенyые wиклы
Anonymous
Дурачок?
Код с кучей готу очень сложно поддерживать.
🦥Alex Fails
ну, goto - это опасная вещь
🦥Alex Fails
ей нельзя злоупотреблять
Anonymous
🦥Alex Fails
так же, как и другой хуйней
Anonymous
Код с готу не пройдёт code review в моей организации вообще, а автор такого говнокода получит рельсой по рукам.
Андрей
Anonymous
Андрей
Удобно, чо.
🦥Alex Fails
🦥Alex Fails
с языка снял
Андрей
Anonymous
А когда юзаешь гото, разве цикл не продолжает существовать?
🦥Alex Fails
ты прыгаешь в другой участок кода
🦥Alex Fails
если копнуть глубже, то у нас есть команды, которые в цикле крутятся
Андрей
🦥Alex Fails
а ты выпрыгиваешь из этой петли
Anonymous
но ведь одну петлю мы распутаем, а вторая существует, в то время как с гото два существуют
Андрей
Anonymous
еще бы уметь на плюсах кодить :D
Андрей
Ты не можешь написать цикл?
Anonymous
for(int i=0;i<100;i++) {
for(int j=0;j<100;j++) {
if(i==95 && j==42)
goto outer;
}
}
outer:
return 0;
0
for(int i=0;i<100;i++) {
for(int j=0;j<100;j++) {
if(i==95 && j==42)
// do something
break;
}
}
Anonymous
как-то так
arisudesu
чет хуйня
arisudesu
используйте отдельный метод
arisudesu
с возвратом
arisudesu
из него