Why isn\'t the size of an array sent as a parameter the same as within main?
#include void PrintSize(int p_someArray[10]); int main () {
The behavior is by design.
Same syntax in function parameter declaration means completely different thing than in local variable definition.
The reason is described in other answers.