'C' why I declare the variable as 'pointer'?
<pre><code>#include &lt;stdio.h&gt;
void main()
{
int a[] = {10,20,30,40,50,60,70,80,90,100};
int k,m,i,*ptr;
k=m=0;
ptr=a;
for(i=0; i&lt;10; i+=2)
{
    k+=ptr[i];
    m+=ptr[i+1];
}
printf("***** result ***** \n\n");
printf("(10+30+50+70+90)=%d\n",k); //250
printf("(20+40+60+80+100)=%d\n",m); //300
}
</code></pre>

<p>Why I use the *ptr as 'pointer'? I mean it cannot run using just 'ptr'?</p>

<p>How the variable '*ptr' load the array 'a[]'.</p>