我从用户那里得到一个字,我需要计算它的长度,但我似乎无法让strlen()
或sizeof()
因某些原因而工作。我在这里做错了什么?
printf("Enter a word: ");
char word;
scanf("%c",&word);
printf("%i",strlen(word));
这看起来很简单,但是我无法打印出我的生命中字符串的长度。
答案 0 :(得分:3)
问题是您尝试仅使用一个char
存储来读取字符串。你可以存储的唯一字符串是null
字符串(长度为零),即
word='\0'
增加字缓冲区的大小。
此外,strlen
需要char*
指针,而不是普通char
。
char word[100];
scanf("%s",word);
printf("%i",strlen(word));