Write a program that takes a string as a parameter, and prints its words in reverse.
- A "word" is a part of the string bounded by spaces and/or tabs, or the begin/end of the string.
- A word is a sequence of **alphanumerical** characters.
- If the number of parameters is different from 1, the program will display `\n`.
- In the parameters that are going to be tested, there won't be any additional" spaces (meaning that there won't be additionnal spaces at the beginning or at the end of the string, and words will always be separated by exactly one space).
- In the parameters that are going to be tested, there will not be any additional spaces. (meaning that there will not be additionnal spaces at the beginning or at the end of the string, and words will always be separated by exactly one space).
- Sort the list given as a parameter, using the function cmp to select the order to apply,
}
```
- This function must sort the list given as a parameter, using the function cmp to select the order to apply, and returns a pointer to the first element of the sorted list.
- Return a pointer to the first element of the sorted list.
Duplications must remain.
Inputs will always be consistent.
- Duplications must remain.
The `type NodeList` must be used.
- Input will always be consistent.
Functions passed as `cmp` will always return `true` if `a` and `b` are in the right order, otherwise it will return `false`.
- You must use the `type NodeList`.
### Expected function
- Functions passed as cmp will always return a value different from 0 if a and b are in the right order, 0 otherwise.