There are many ways to learn to code these days. From coding bootcamps like Flatiron School to online courses to totally free beginner resources. The best way to learn to code depends on many factors, but the most important one is you. See what course is best for you.
The only differnces between
unsigned char X;
and
unsigned char X=1;
is that in the second case the X becomes 1 at the start of the loop.
btw.
for( int i=0;i<i+1; i++ )
while loop till an overflow.