Я попытался вывести строку «Hello», используя указатель.Вот код
char s[] = "Hello"; char * p; for( p = s; p[0]; ++ p ) cout << * p; return 0;
Я не понимаю, почему p[0] в цикле for может работать.
p[0]
p[0] в данном случае точно соответствует *p.В конце вашего массива он будет равен '\0', что означает числовое значение 0, которое затем преобразуется в значение false и останавливает цикл.
*p
'\0'