For instance in C main function we add char** to represent arguments. So even the arguments coming from shell are signed. Why ? obviously unsigned char would represent more char