C sscanf ostrzeżenie przy kompilacji

unsigned char tabp[3];
int sl;

sscanf(tabp,"%d",&sl);

I tu mam “pointer targets in passing argument 1 of ‘sscanf’ differ in signedness”

moze powino być 

char tabp[3];

zamiast

unsigned char tabp[3];

Na niektórych kompilatorach char jest domyślnie unsigned, a na niektórych domyślnie signed.

Samo char i nie ma ostrzeżenia avr-gcc 4.9.2