LINUX.ORG.RU

Сообщения suv121

 

ftp передача данных

подскажите как после установление соединения с сервером ftp, открыть второе соединение для передачи данных

suv121
()

сравнение строк

fgets(buf,sizeof(buf),stdin);
if(buf[strlen(buf)-1]=='\n'){
                            buf[strlen(buf)-1]='\0';
                            }

FILE* f=fopen(dir, "r");
fgets(op,100,f);
fclose(f);
if(op[strlen(op)-1]=='\n'){
                          op[strlen(op)-1]='\0';
                           }

for(g=0;g<strlen(op);g++){

             if(op[g]==' '){
                           y=strlen(op)-g;
                           for(z=0;z<y;z++){
                                       x[z]=op[g+1];
                  вны                      g++;
                                                    }
                           }
              else continue;
                  for(z=0;z<strlen(x);z++){
                                            printf("%c",x[z]);
                                           }
                  break;
                  }


 if(x[strlen(x)-1]=='\n'){
                          x[strlen(x)-1]='\0';
                         }

if(strcmp(x,buf)==NULL){
                       printf("равны");
                       }
else{printf("не равны");}

помогите сравнить слова , первое вводится с клавиатуры , второе считывается с файла после первого пробела и является концом строки

suv121
()

scandir

помогите написать код со scandir чтобы он выводил из заданной директории только те папки , имена которых состоят из цифр

suv121
()

ошибка сегментирования

помогите доделать код , когда после первого открытия файла пытаюсь его открыть ещё раз , то открывает всё равно первый , а если убиваю процесс то выдается ошибка сегментации

#include<stdio.h>
#include <stdlib.h>
#include <string.h>
#include <signal.h>
#include<dirent.h>

main()&#123;
       char buf&#91;100&#93;;
       char* p=&buf&#91;0&#93;;
       int pid,n,i,c;
       char way&#91;100&#93;="/proc";
       struct dirent **namelist;
       n=scandir(way, &namelist, 0, alphasort);
       while(n--)&#123;
                    printf("%s\n", namelist&#91;n&#93;->d_name);
                    free(namelist&#91;n&#93;);
                    &#125;
       free(namelist);
      printf("enter /proc/PID/status instead of PID write are necessery pid :\n");
      fgets(way,sizeof way,stdin);
M1: if(way&#91;strlen(way)-1&#93;=='\n')&#123;
                                            way&#91;strlen(way)-1&#93;='\0';
                                            &#125;
       printf("open file status in dir:\n");
       for(n=0;n<100;n++)&#123;
                                  printf("%c",way&#91;n&#93;);
                                  &#125;
       printf("\n");
       FILE* f=fopen(way,"r");
       while(!feof(f) )&#123;
                           *p++=fgetc(f);
                           &#125;
       fclose(f);

       for(n=0;n<100;n++)&#123;
                                  printf("%c",buf&#91;n&#93;);
                                  &#125;
       c=getpid();
       printf("\n\nPID this programm:%d", c);
       printf("\nif it is that process which you want kill, press 1 \nif it is that another proc, press 2\n" );
       scanf("%d", &n);
       if (n!=1)&#123;
                  printf("enter anoter /proc/PID/status\n");
                  scanf("%s%*c",&way);
                  goto M1;
                  &#125;
       else&#123;
             printf("for confirmation enter PID:\n");
             scanf("%d", &pid);
             kill(pid, SIGKILL);
             &#125;
&#125;

suv121
()

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