3
用C定义字符串的细节是什么?
我应该为我的一个班回答一个家庭作业问题。具体来说,我应该说是否将C中的某些数组视为字符串。根据本文(https://www.geeksforgeeks.org/strings-in-c-2/),我知道字符串是一个字符数组,结尾是空终止符。 我的主要困扰是询问如下数组的问题: char c1[] = { 'C', 'S', '\0', '3', '2', '4', '\0' }; 显然这是一个字符数组,末尾有一个空终止符。但是,由于它的中间也有一个空终止符,它是否仍被认为是字符串?这将如何影响字符串? 编辑:根据评论,我提供了问题的实际措辞: “出于将它们用作strcpy(),strncpy(),strcmp(),strncmp()和类似的字符串函数(表示所有适用)的参数的目的,可以将以下哪些数组视为“字符串”?” 编辑:我给我的教授发了电子邮件,因为这个问题的措词似乎模棱两可(正如一些人指出的那样)。如果有人好奇,他告诉我“是的,它是一个字符串。关键是有一个空字符。但是,这当然会影响任何字符串操作;该字符串以空字符结尾。”