Checking if a string is funny or not
There's no reason to make a reversed copy. Just index from the back.
Nor to delay comparing the differences. It just means you have to save them.
Following the above two points ensures the function never throws. So, in C++ mark it noexcept.
Next, there's no need to go over the string from beginning to end and from end to beginning. Just stop in the middle.
In line with that, you should use C++17's std::string_view so even the caller need not make a copy.
Also, return a boolean. Leave it to the caller to Interpret it as he likes, not necessarily by choosing some English words.
I have no idea why you are bringing floating-point into it with fabs(), instead of staying with integers using std::abs(). At least I'm reasonably sure the compiler will fix that inefficiency. Or will it?


Modified C++ code:

constexpr bool isFunnyString(std::string_view s) noexcept {
    std::size_t a = 0, b = size(s);
    if (b &gt; 2)
        for (b -= 2; a &lt; b; ++a, --b)
            if (std::abs(s[a] - s[a + 1]) != std::abs(s[b] - s[b + 1]))
                return false;
    return true;
}