Массивы не указатели.Во втором примере line
- это немодифицируемое lvalue, но, что более важно, независимо от того, что вы помещаете в правую часть, оно не может иметь тип char [10]
(потому что массивы распадаются на указатели в контексте без lvalue)и, следовательно, типы никогда не могут совпадать.
Что бы ни стоило, строковый литерал имеет тип char [N]
, а не const char [N]
и особенно не const char *
, несмотря на тот факт, что попытки изменить его вызывают неопределенное поведение,(Здесь N
- длина цитируемого текста в байтах, включая добавленный нулевой терминатор.)