Я немного удивлен следующим.
Пример 1:
char s[100] = "abcd"; // declare and initialize - WORKS
Пример 2:
char s[100]; // declare
s = "hello"; // initalize - DOESN'T WORK ('lvalue required' error)
Мне интересно, почему второй подход не работает. Кажется естественным, что он должен (он работает с другими типами данных)? Может ли кто-нибудь объяснить мне логику этого?