Я знаю, что в С смежные строковые литералы объединяются.Я хочу знать, конкатенации ли смежных строковых литералов с char * s?
Причина, по которой я задаю этот вопрос, заключается в том, что я хочу передать конкатенацию двух строк в perror()
и одну из строкзаранее неизвестно, поэтому я должен использовать char*
.
perror("error opening " "file.txt"); // string literals are concatenated
char* filename = "file.txt"; // or some other file
perror("error opening " filename); // will this work?