fork download
  1. #include <iostream>
  2. #include <cstring>
  3.  
  4. template <typename T>
  5. void maxn(T * arr, unsigned int n)
  6. {
  7. T highest = arr[0];
  8.  
  9. for (unsigned int i = 1; i < n; ++i)
  10. {
  11. if (highest < arr[i])
  12. highest = arr[i];
  13. }
  14.  
  15. std::cout << std::endl << highest;
  16. }
  17.  
  18.  
  19. template<>
  20. void maxn<char*>(char **array, unsigned int n)
  21. {
  22. char *p = array[0];
  23.  
  24. for (unsigned int i = 1; i < n; ++i)
  25. {
  26. if (strlen(p) < strlen(array[i]))
  27. p = array[i];
  28. }
  29.  
  30. std::cout << std::endl << "Line: " << p << " & Length: " << strlen(p);
  31. }
  32.  
  33. int main()
  34. {
  35. int arr_int[] = {3, 8, 0 ,9};
  36. maxn(arr_int, 4);
  37.  
  38. double arr_double[] = {2.56, 0, 1, 3.567, 41.7, 7.87};
  39. maxn(arr_double, 6);
  40.  
  41. char *p[] = {
  42. ".....................",
  43. ".................................",
  44. ".............",
  45. "**********************",
  46. "^^^^^^^^^^^^^^^^^^^^^^^^^^^^"
  47. };
  48. maxn(p, 5);
  49.  
  50. return 0;
  51. }
  52.  
  53.  
Success #stdin #stdout 0s 15240KB
stdin
Standard input is empty
stdout
9
41.7
Line: ................................. & Length: 33