コード例 #1
0
ファイル: 2.3.c プロジェクト: pbondarenko/exersises
int main () {

	char * line  = get_line();
	int to_print = htol(line);
	printf("%d\n", to_print);
		
	free(line);
	

	return 0;
}
コード例 #2
0
ファイル: cat.c プロジェクト: prool/proolix
int main(int argc, char *argv[] )
{
unsigned char c[512];
int i, ii, j, h, n, Files=0;
unsigned long offset=0;
unsigned long adr=0;

argc--;

ii=1;
do
  {
  if (argc)
    {
    if (argv[ii][0]=='-')
      {
      n=(int)strlen(argv[ii]);
      for (j=1;j<n;j++)
        switch (argv[ii][j])
          {
          case 'O': offset=htol(argv[ii]+2);
                    j=n; /* это для выхода из цикла for */
                    break;
          case 'H': FlagH++;  break;
          case 'M': More=2; break;
          case 'A': FlagA++;  break;
          case 'T': FlagT++;  break;
          case 'N': FlagN++;  break;
          case 's': Flag_s=0; break;
          default : help(); return 1;
          }
      }
    else
      {
      Files++;
      if ((h=open(argv[ii],O_RDONLY))==-1)
        if (Flag_s) printf("Can't open %s\n",argv[ii]);

      if (FlagT && Flag_s) printf("offset = %x\n",offset);
      if (offset)
        {
        for (i=0; i<offset/512; i++)
          {
          n=(int)read(h,c,512);
          if (n!=512) if (Flag_s) puts("Can't skip offset");
          }
        n=(int)read(h,c,j=(int)(offset%512l));
        if (n!=j) if (Flag_s) puts("Can't skip offset");
        adr= (unsigned long int) offset;
        offset=0;
        }

      while (1)
        {
        if((n=(int)read(h,c,16))<=0) break;
        if(FlagN) continue;
        if (FlagT) printf("%8lX  ",adr);
        adr+=16;
        if (FlagH+FlagA)
          {
          for (i=0;i<n;i++) printf("%2X ",c[i]);
          if (n<16)
            for(i=0;i<(16-n);i++) printf("   ");
          if (FlagA)
            {
            putchar (' ');
            for (i=0;i<n;i++)
              {
              if (c[i]>=' ') {if (putchar(c[i])==EOF) goto L_close; }
              else putchar(' ');
              }
            }
          if (puts("")==EOF) goto L_close;
          }
        else
          for (i=0;i<n;i++) if (putchar(c[i])==EOF) goto L_close;
        }
      L_close:
      close(h);
      #ifdef DEBUG
      printf("\ncat: close: finished\n");
      #endif
      }
    }
  }
while (ii++<argc);

#ifdef DEBUG
printf("\ncat: breakpoint A\n");
#endif

/*
if (!Files)
  вывод файла /dev/tty
  */

More=0;
return 0;
}