我的代码包含If Else语句。我想让它验证一个用户输入的字符串在两个方面放入脚本:
下面是我的代码,我认为错误与字符串代码的长度有关。
编辑前:
cout << "Your word: " << szOriginal << "\n";
if szOriginal.length() > 0 and (isalpha(szOriginal))
{
szWord = szOriginal.tolower();
cout << szWord << "\n";
}
else
{
cout << "Please enter a valid word." << endl;
}
很抱歉,Dev-C ++产生的错误是
预期'('之前'szOriginal“
链接到printscreen:http://gyazo.com/b3f43928072e9c2a5a8a712a9030364d
使用变量声明编辑之后:
#include <cstdio>
#include <cstdlib>
#include <string>
#include <iostream>
using namespace std;
int main(int nNumberofArgs, char* pszArgs[])
{
string original;
cout << "Welcome to the English to Pig Latin translator!\n";
cout << "Type a word you wish to translate:\n";
cin >> original;
cout << "Your word: " << original << "\n";
if (original.length() > 0 && (isalpha(original)) )
{
word = original.tolower();
cout << Word << "\n";
}
else
{
cout << "Please enter a valid word." << endl;
}
system("PAUSE");
return 0;
}
对于这个糟糕的帖子感到抱歉!
答案 0 :(得分:1)
if ( [...] )
- 你错过了括号。
此外,它是&&
而不是and
。
答案 1 :(得分:1)
我认为你来自python背景
cout << "Your word: " << szOriginal << "\n";
if (szOriginal.length() > 0 && (isalpha(szOriginal)) )
{
szWord = szOriginal.tolower();
cout << szWord << "\n";
}
else
{
cout << "Please enter a valid word." << endl;
}
( )
条件需要if
,并且&&
用于逻辑和
修改强>
当您说szOriginal
时,您使用char
作为isalpha(szOriginal)
当你说szWord = szOriginal.tolower();
时作为一个对象
所以你需要研究那个