LINUX.ORG.RU

Сообщения aunt

 

[C] Разбить ввод на блоки

Всем привет. Нужно постоянно считывать stdin, т.е.

while((fgets(buff,LINE_MAX,stdin))!=NULL)
потом разбивать полученные данные на 4-байтовые блоки, т.е. думаю создать массив, строки для хранения, столбцы для индекса.
char ch[3][MAX];
и записывать туда данные. Или как по другому лучше поступить?!

 

aunt
()

проблема с сокетами [C]

Hello люди. Есть пример из книги. Но не понимаю почему не работает. Может кто-то подскажет?!

server
int main (void)
{
int listenfd, connfd;
time_t ticks;
char buff[LINE];
struct sockaddr_in servaddr;

errno=0;

if((listenfd=socket(AF_INET, SOCK_STREAM, 0))<0)
{
fprintf(stderr,"%s\n",strerror(errno));
exit(EXIT_FAILURE);
}

bzero(&servaddr, sizeof(servaddr));
servaddr.sin_family=AF_INET;
servaddr.sin_addr.s_addr=htonl(INADDR_ANY);
servaddr.sin_port=htons(PORT);

if((bind(listenfd,(struct sockaddr *)&servaddr, sizeof(servaddr)))!=0)
{
fprintf(stderr,"%s\n",strerror(errno));
exit(EXIT_FAILURE);
}

if((listen(listenfd,16))!=0)
{
fprintf(stderr,"%s\n",strerror(errno));
exit(EXIT_FAILURE);
}

for(;;)
{
connfd=accept(listenfd,(struct sockaddr *)NULL, NULL);
ticks=time(NULL);
snprintf(buff,sizeof(buff),"%24s\er\en",ctime(&ticks));
write(connfd,buff,strlen(buff));

close(connfd);
}

return 0;
}


client
int main (int argc, char *argv[])
{
int sockfd, n;
char recvline[LINE-1];
struct sockaddr_in servaddr;

if(argc!=2)
{
printf("Usage:%s ip address time server\n");
exit(EXIT_FAILURE);
}

if((sockfd=socket(AF_INET, SOCK_STREAM, 0))<0)
{
perror("Socket init: ");
exit(EXIT_FAILURE);
}

bzero(&servaddr, sizeof(servaddr));
servaddr.sin_family = AF_INET;
servaddr.sin_port = htons(PORT);

if(inet_pton(AF_INET,argv[1],&servaddr.sin_addr)<0)
{
perror("inet_pton: ");
exit(EXIT_FAILURE);
}

while((n=read(sockfd,recvline,LINE))>0) //чтение не происходит (
{
recvline[n]=0;
if(fputs(recvline,stdout)==EOF) perror("fputs: ");
}
if(n<0) perror("Error read of socket: ");

return 0;
}

Заранее спасибо!

 

aunt
()

Как правильно обращаться к данным переданым через массив указателей на аргументы [C]

Например ./a.out file_name 1234567890 Как привильно обратиться к массиву чисел?!

 

aunt
()

рекурсивное удаление

Подскажите пожалуйста алгоритм рекурсивного удаления, программа на С.
Есть раздел на котором множество папок с файлами, с них нужно удалить временные файлы. Заранее спасибо.

aunt
()

ужасный баг

Сразу после установки вот такое в логах, и соответственно в вир. консолях, инет решения проблемы не даёт, может кто-то такое смог исправить. Ubuntu jaunty

[ 8600.649036] hub 2-0:1.0: unable to enumerate USB device on port 6
[ 8600.861043] hub 1-0:1.0: unable to enumerate USB device on port 6
[ 8601.101064] hub 2-0:1.0: unable to enumerate USB device on port 6
[ 8601.313046] hub 1-0:1.0: unable to enumerate USB device on port 6
[ 8601.553035] hub 2-0:1.0: unable to enumerate USB device on port 6

aunt
()

Клиент для нормальной работы АСИ

Такая ситуация, пробывала Pidgin, qutim, psi. почти всегда пишет, «Удаленный хост закрыл соеденение». Не могу понять почему!!!!! Пробывала ради интереса под виндой там всё нормально. Тут же с раза 10 только удаётся залогинеться, и то не всегда. Кто-то знает в чём проблема?! Заранее всем спасибо!

aunt
()

монтирование карточки

Всем здрасте.
Нужно чтобы при загрузке системы SD карточка монтировалась в оперделённую директорию.
Посоветуйте пожалуйста что для этого нужно почитать.

aunt
()

считывание произвольного слова

Помогите пожалуйста с выбором алгоритма,подтолкните в нужное направление, совсем запуталась. Программа на С.

Есть файл вида
слово-1
слово-2
.....
слово-n
Нужно случайно выбрать одно слово.

aunt
()

передать текущую директорию

Например если просто открываю текущую, то проблем нет

.........
if((mydir=opendir("."))==NULL)
.........
А вот передать текущую директорию в функцию почему-то не получается, что-то типа
..............
char *dname;
dname=".";
my_fun(*dname)
..............
..............
void my_fun(char pname[])
{
..............
if(dirp=(opendir("p_name"))==NULL)
{
   perror("Opendir:");
   exit(1);
 }
..............
В общем если так то директория не открывается. Пишет не существует файл или директория. Может кто знает как это решить?!

aunt
()

Pinnacle Tv Tuner

Досталась в подарок Pinnacle 320cx ExpressCard Всё определяется, лампочка на ней загорается.

ajax:~# lsusb 
Bus 004 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 004: ID 2304:022e Pinnacle Systems, Inc. [hex] 
Bus 003 Device 003: ID 064e:a103 Suyin Corp. 
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 003: ID 0458:003a KYE Systems Corp. (Mouse Systems) 
Bus 001 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
ajax:~# 
ajax:~# dmesg | grep Pinnacle
[  517.208745] usb 3-5: Manufacturer: Pinnacle system
[  517.369872] dvb-usb: found a 'Pinnacle Expresscard 320cx' in cold state, will try to load a firmware
[  518.142506] dvb-usb: found a 'Pinnacle Expresscard 320cx' in warm state.
[  518.150507] DVB: registering new adapter (Pinnacle Expresscard 320cx)
[  518.508283] dvb-usb: Pinnacle Expresscard 320cx successfully initialized and connected.
ajax:~# 
ajax:~# ls -l /lib/firmware/
total 36
-rw-r--r-- 1 root root 34306 2007-09-10 00:00 dvb-usb-dib0700-1.10.fw
Но при запуске программы
ajax:~$ tvtime-scanner 
Reading configuration from /etc/tvtime/tvtime.xml
Reading configuration from /home/galka/.tvtime/tvtime.xml
Scanning using TV standard PAL.
/home/galka/.tvtime/stationlist.xml: No existing PAL station list "Custom".
videoinput: Driver won't tell us its norm: Invalid argument
videoinput: Can't get tuner info: Invalid argument

    Your capture card driver: uvcvideo [Acer Crystal Eye webcam/0000:00:02.1/256]
    does not support full size studio-quality images required by tvtime.
    This is true for many low-quality webcams.  Please select a
    different video device for tvtime to use with the command line
    option --device.

Ну в общем Help! Debian Lenny 2.6.26

aunt
()

RSS подписка на новые темы