如何解决代码中未声明的错误

How to solve the not declared errors in the code

本文关键字:未声明 错误 代码 何解决 解决      更新时间:2023-10-16

这里有一个计算元音数量的代码,但我有一个错误,告诉我没有声明strlength。

#include<iostream> 
#include<string> 
using namespace std; 
int main() { 
   int vow_cnt=0; 
   char name[15]; 
   cout<<"Enter a name"<<endl; 
   cin>>name; 
   for(int i=0;i<strlength(name);i++) 
   { 
      if(name[i] == 'a' || name[i] == 'e'||name[i] == 'i'||name[i] == 'o'||name[i] == 'u') 
      { vow_cnt++; } 
      cout<<"Total Vowels in the string are=>"<<vow_cnt<<endl; 
   } 
}

您还没有发布任何代码。无论如何,我相信你要找的是strlen,而不是strlength。strlen的定义在cstring标头上:

#include <cstring>
int main() {
    char arr[] = "bleh";
    int length = std::strlen(arr);
}

所以你的固定代码应该是:

#include <iostream> 
#include <cstring> 
using std::strlen; 
using std::cin; 
using std::endl; 
using std::cout; 
int main() { 
   int vow_cnt=0; 
   char name[15]; 
   cout<<"Enter a name"<<endl; 
   cin>>name; 
   for(int i=0;i<strlen(name);i++) 
   { 
      if(name[i] == 'a' || name[i] == 'e'||name[i] == 'i'||name[i] == 'o'||name[i] == 'u') 
      { vow_cnt++; } 
      cout<<"Total Vowels in the string are=>"<<vow_cnt<<endl; 
   } 
}

什么是strlengthstd::string有一个成员方法length,您应该使用它:

std::string s = "this is the string";
size_t len = s.length();

或者你可能在考虑strlen

由于这是C++,我建议您使用std::string并使用length,而不是const char*strlen

更改此项:

for(int i=0;i<strlength(name);i++) 

for(int i=0;i<strlen(name);i++) 

另外,并不是说你的代码不考虑大写元音。