fork download
  1.  
  2.  
  3. #include <stdio.h>
  4.  
  5. #include <fcntl.h>
  6. #include <time.h>
  7. #include <errno.h>
  8. #include <unistd.h>
  9. #include <stdlib.h>
  10. #include <string.h>
  11. #include <sys/stat.h>
  12. #include <netinet/in.h>
  13. #include <sys/types.h>
  14. #include <sys/socket.h>
  15.  
  16.  
  17. #include"in_out.h"
  18.  
  19. struct args
  20. {
  21. long int arg1;
  22. long int arg2;
  23. };
  24.  
  25. struct result
  26. {
  27. long int sum;
  28. };
  29.  
  30.  
  31. int readn(int fd, void *vptr, int n)
  32. {
  33. int nleft;
  34. int nread;
  35. char *ptr;
  36. ptr = vptr;
  37. nleft = n;
  38. while (nleft > 0) {
  39. if ( (nread = read(fd, ptr, nleft)) < 0) {
  40. if (errno == EINTR)
  41. nread = 0; /* and call read() again */
  42. else
  43. return (-1);
  44. } else if (nread == 0)
  45. break; /* EOF */
  46. nleft -= nread;
  47. ptr += nread;
  48. }
  49. return (n - nleft); /* return >= 0 */
  50. }
  51.  
  52. int writen(int fd, const void *vptr, int n)
  53. {
  54. size_t nleft;
  55. ssize_t nwritten;
  56. const char *ptr;
  57. ptr = vptr;
  58. nleft = n;
  59. while (nleft > 0)
  60. {
  61. if ( (nwritten = write(fd, ptr, nleft)) <= 0)
  62. {
  63. if (nwritten < 0 && errno == EINTR)
  64. nwritten = 0;
  65. else
  66. return (-1);
  67. }
  68. nleft -= nwritten;
  69. ptr += nwritten;
  70. }
  71. return (n);
  72. }
  73.  
  74.  
  75. int readline(int fd, void *vptr, size_t maxlen)
  76. {
  77. size_t n,rc;
  78. char c,*ptr;
  79. ptr=vptr;
  80. for(n=1;n<maxlen;n++)
  81. {
  82. again:
  83. if((rc=read(fd,&c,1))==1)
  84. {
  85. *ptr++=c;
  86. if(c=='\n')
  87. break;
  88. }
  89. else if(rc==0)
  90. {
  91. *ptr = 0;
  92. return (n - 1);
  93. }
  94. else
  95. {
  96. if (errno == EINTR)
  97. goto again;
  98. return (-1);
  99. }
  100. }
  101. *ptr = 0;
  102. return (n);
  103. }
  104. void w_Endline(const char* sent)
  105. {
  106. size_t endlen=strlen(sent)-1;
  107. if(sent[endlen]=='\n')
  108. sent[endlen]='\0';
  109.  
  110. }
  111. void w_White(const char* sent)
  112. {
  113. size_t whitelen=strlen(sent);
  114. char* endlen=sent+whitelen;
  115. while(endlen>sent &&isspace(*endlen))
  116. {
  117. endlen='\0';
  118. --endlen;
  119. }
  120. }
  121.  
  122.  
  123.  
Compilation error #stdin compilation error #stdout 0s 0KB
stdin
Standard input is empty
compilation info
prog.c:17:19: fatal error: in_out.h: No such file or directory
 #include"in_out.h"
                   ^
compilation terminated.
stdout
Standard output is empty