I read here: C: differences between char pointer and array that char pointers and char arrays are not the same. Therefore, I would expect these to be overloading functions:
#include <iostream>
using namespace std;
int function1(char* c)
{
    cout << "received a pointer" << endl;
    return 1;
}
int function1(char c[])
{
    cout << "received an array" << endl;
    return 1;
}
int main()
{
    char a = 'a';
    char* pa = &a;
    char arr[1] = { 'b' };
    function1(arr);
}
Yet upon building I get the error C2084: function 'int function1(char *)' already has a body. Why does the compiler seem to consider a char pointer to be the same as a char array?
 
     
    