fork download
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. /* CRコードをカウントする。 */
  5.  
  6. int main(int argc, char *args[]) {
  7.  
  8. int ch;
  9. int count = 0;
  10. FILE *file;
  11.  
  12. if (argc == 2) {
  13. file = fopen(args[1], "r");
  14. if (file == NULL) {
  15. perror(NULL);
  16. exit(EXIT_FAILURE);
  17. }
  18. } else if (argc > 2) {
  19. printf("arguments are 0 or 1.\n");
  20. return 0;
  21. } else {
  22. file = stdin;
  23. }
  24.  
  25. while ((ch = fgetc(file)) != EOF) {
  26. if (ch == 0x0D) { /* 残念でした! バイナリファイルとして開かないと検出できません! */
  27. ++count;
  28. }
  29. }
  30.  
  31. printf("Count CR Code (0x0D): %d\n", count);
  32.  
  33. if (file != stdin) {
  34. fclose(file);
  35. }
  36.  
  37. return 0;
  38. }
  39.  
Success #stdin #stdout 0s 2296KB
stdin
まじかよ
検出できねえじゃん
オワタ
stdout
Count CR Code (0x0D): 0