答えの一部しか知らないプログラミングの質問に出くわしました。
int f( char *p )
{
int n = 0 ;
while ( *p != 0 )
n = 10*n + *p++ - '0' ;
return n ;
}
これがプログラムが行っていることだと思います。p はポインターであり、while ループはポインターの値が 0 になるまで DE-refrencing しています。ただし、n 代入行がわかりません。'0' は何をしているのですか? p の値は最初は負であると想定しています。これが、インクリメント後に 0 に達する唯一の方法です。