【发布时间】:2020-10-30 06:46:45
【问题描述】:
我刚刚开始编写代码,我需要帮助弄清楚为什么这个循环会计算字符串中的空格。
据我了解,这段代码应该告诉计算机不要计算空格“/0”,如果循环遍历字符串并且它是任何其他字符,则增加计数。
int main(void)
{
string t = get_string("Copy & Past Text\n");
int lettercount = 0;
for (int i = 0; t[i] != '\0'; i++)
{
lettercount++;
}
printf("%i", lettercount);
printf("/n");
}
【问题讨论】:
-
'\0'是 NUL,而不是空格。 -
我认为 Nul 是什么代表字符串中的空格?
-
空格
' '是空格。 -
澄清一下,什么时候使用NUL?
-
看一下ascii表
' '是32而\0是0,这不是同一个值
标签: c for-loop c-strings cs50 null-character