在C中获取字符串长度
Get string lenght in C
我想循环字符串中的所有字符以获得字符串长度,但它不起作用。我不喜欢使用已经创建的函数来这样做。
#include <stdio.h>
#define N 100
int main()
{
int i=0;
char str[N];
scanf("%s", &str);
while(str[i]!="[=10=]"){
i=i+1;
}
printf("Lenght: %d", i);
return 0;
}
对于初学者来说,scanf 的调用必须至少看起来像
scanf("%s", str);
而不是
scanf("%s", &str);
在while循环的条件下
while(str[i]!="[=12=]"){
比较了一个字符与字符串文字 "[=15=]"
,它被隐式转换为指向其第一个字符的指针。所以比较了一个字符和一个指针。
你需要比较两个字符
while(str[i] != '[=13=]' ){
或者只是
while(str[i]){
我想循环字符串中的所有字符以获得字符串长度,但它不起作用。我不喜欢使用已经创建的函数来这样做。
#include <stdio.h>
#define N 100
int main()
{
int i=0;
char str[N];
scanf("%s", &str);
while(str[i]!="[=10=]"){
i=i+1;
}
printf("Lenght: %d", i);
return 0;
}
对于初学者来说,scanf 的调用必须至少看起来像
scanf("%s", str);
而不是
scanf("%s", &str);
在while循环的条件下
while(str[i]!="[=12=]"){
比较了一个字符与字符串文字 "[=15=]"
,它被隐式转换为指向其第一个字符的指针。所以比较了一个字符和一个指针。
你需要比较两个字符
while(str[i] != '[=13=]' ){
或者只是
while(str[i]){