*c

Minoru 20.12.2012 18:40

Оказывается, в C99 можно выделять массивы на стеке в рантайме:

```C
int i, arr[i+1];
scanf("%i", &i);
```

Фича называется variable length arrays: http://gcc.gnu.org/onlinedocs/gcc-4.7.2/...

Minoru 28.10.2012 15:48

А как мне проверить, что scanf() дочитал строку до конца? Например, я делаю scanf("%i", ...), а пользователь вводит 123abc — 123 прочитается, а abc останется на вводе до следующего scanf() (или read(), или что там будет читать ввод). Как убедиться, что такого не случиться?

Minoru 24.01.2012 21:48

В моём сервере есть два UPD-сокета. В бесконечном цикле крутится код, который с помощью poll ждёт POLLIN и делает recvfrom() на каждом готовом сокете. Кроме того, отдельная нить с помощью этих же сокетов что-то отправляет. Всё это месиво работает, а вот клиент падает, жалуясь на Bad file descriptor.
Таких же ... more →

Minoru 24.01.2012 19:07

Пишу UDP-сервер. Он биндит пару сокетов (вообще хз сколько, это от результата getaddrinfo зависит) и висит на них poll'ом. При получении сообщения он запоминает адресс клиента в структуре sockaddr_storage. Время от времени ему нужно что-то отправлять клиентам, и тут всплывает проблема: клиенты могут быть подключены ... more →

Minoru 25.11.2011 13:10

http://www.akkadia.org/drepper/userapi-i... — Userlevel IPv6 Programming Introduction

Minoru 23.11.2011 20:36

Узнал сегодня об одной интересной штуке, которую сам автор назвал «calls table». Применяется она тогда, когда у нас есть некий union (который, есстественно, обёрнут в struct и сопровохжается флагом, указывающим на тип, причём значения флага принадлежат некому enum) и мы хотим по-разному обрабатывать его содержимое ... more →

Minoru 10.03.2011 17:00

Псто, в связи с повышающимися расходами на жильё мне нужна онлайн-работа (в смысле, связь с работодателем по инету, а не ножками в контору топать) с неполным рабочим днём.

Кратко о себе: линуксоид-дебианщик с почти трёхлетним стажем, более-менее владею Си (написал пару патчей для любимого pdf ридера Zathura), ... more →

Minoru 20.02.2011 21:50

Господа, а подскажите-ка мне, пожалуйста, могу ли я обработку ошибок после стандартных вызовов выделять в функии? Например, у меня в программе во многих местах используется fork(), и после каждого pid = fork() приходится писать вот что:

if(pid == -1) {
perror("Error in fork():");
exit(126);
}

Собственно, ... more →

Do you really want to delete ?

*c is used by:

gelraen

gelraen

Hirthwork McGillah

hirthwork

analizer

analizer

16+

238328

kb

kb

Minoru

Minoru

werehuman

werehuman

4DA

4da

Nico-izo

Nico-izo

SirAnthony

SirAnthony

dorfe

dorfe

Rayslava

eoranged

eoranged

hanyuupoke

lexszero

lexszero

L29Ah

L29Ah

sayafag

jabber

jabber

няша

generatorglukoff

Michael Pogoda

MPogoda

asmer

asmer

Артс

arts

Maxim Kirenenko

part1zano

K900

K900

Darth Bricktop

Like-all

nya

nya

i

inst

Oleg Tsarev

zamotivator

Maxim Barzunov

zweipluse

nstm0

nstm0

polatov

polatov

rman

0x2207

0x2207

eurekafag

eurekafag

DOMr

DOMr

Forth EMU

emu

anonkz

anonkz

carnero

carnero

Rejjin

Rejjin