fork(1) download
  1. #include <stdio.h>
  2. #include <stdint.h>
  3. #include <stdbool.h>
  4.  
  5. enum {
  6. IDX_MIN = 0,
  7. IDX_MAX,
  8. };
  9.  
  10. static int s_range[][2] = {
  11. { -10, -5 },
  12. { -5, 2 },
  13. { 2, 7 },
  14. { 7, 15 },
  15. { 12, 20 }
  16. };
  17.  
  18. static const int kDefaultMin = 0;
  19. static const int kDefaultMax = 10;
  20.  
  21. bool setMin(int setMin, int *dstMin, int *dstMax);
  22. bool setMax(int setMax, int *dstMin, int *dstMax);
  23.  
  24. void test_group_run(void)
  25. {
  26. int amin, amax;
  27. int num = sizeof(s_range)/sizeof(s_range[0]);
  28.  
  29. for(int idx=0; idx < num; idx++) {
  30. amin = kDefaultMin;
  31. amax = kDefaultMax;
  32. bool bf1 = setMin(s_range[idx][IDX_MIN], &amin, &amax);
  33. bool bf2 = setMax(s_range[idx][IDX_MAX], &amin, &amax);
  34. printf("idx%d: (SetMin, SetMax)=(%d, %d)\n", idx+1, bf1, bf2);
  35. }
  36. }
  37.  
  38. int main(void) {
  39. test_group_run();
  40. return 0;
  41. }
  42.  
  43. bool setMin(int setMin, int *dstMin, int *dstMax)
  44. {
  45. if (setMin > *dstMax) {
  46. return false;
  47. }
  48. *dstMin = setMin;
  49. return true;
  50. }
  51. bool setMax(int setMax, int *dstMin, int *dstMax)
  52. {
  53. if (setMax < *dstMin) {
  54. return false;
  55. }
  56. *dstMax = setMax;
  57. return true;
  58. }
  59.  
  60.  
Success #stdin #stdout 0s 10320KB
stdin
Standard input is empty
stdout
idx1: (SetMin, SetMax)=(1, 1)
idx2: (SetMin, SetMax)=(1, 1)
idx3: (SetMin, SetMax)=(1, 1)
idx4: (SetMin, SetMax)=(1, 1)
idx5: (SetMin, SetMax)=(0, 1)