fast input

I have a question regarding fastest input-output
I have seen a code for fastest input-output.given below is the code
int fast_read(){
int input;
char c=0;
while(c<33)c=getchar_unlocked();
input=0;
while(c>33){
input=input*10+c-‘0’;
c=getchar_unlocked();
}
return input;
}
Can anyone help me in understanding the code,Why we are taking c>33 and what is the meaning for that.
Also i want to know about getchar_unlocked.
Thanks in advance.

//