我被问到关于叮咬的任务的问题。问的问题是:
鉴于声明:char myString[16];
以下哪项陈述有效?如果语句无效,请提供正确的语法。
a. strcpy(myString, “Hello the world”);
b. strlen(myString);
c. myString = “Marylane”;
d. cin.getline(myString, 80);
e. cout << myString;
f. if (myString >= “Nice day”)
cout << myString;
g. myString[6] = ‘t’;
我已经能够按如下方式编译其中几个部分:
/*b.*/ int len;
len = strlen(myString);
/*c.*/ strcpy(myString, “Hello the world”);
/*f.*/ int strTest;
strTest = strcmp(myString, "Nice day");
if (strTest < 0)
cout << myString << endl;
else
{
cout << "No Dice" << endl;
}
我认为'g'是无效的,因为我认为你不能使用赋值运算符,但是我把它编译好了。任何人都可以解释一下吗?
答案 0 :(得分:2)
char myString[16];
是一个数组。 myString[6] = 't';
将字符't'
分配给该数组的第六个索引。这是C ++中的有效操作。
答案 1 :(得分:1)
您正在使用std::string
在代码中为字符串操作,std::string
可变。因此,您可以使用基本操作(例如在作业中)更改字符串的某些部分。我建议你阅读文档或这个答案:https://stackoverflow.com/a/2916394/1867076
另外,您也可以找到一些示例来帮助您:http://www.cplusplus.com/forum/beginner/821/
如果这不能解答您的问题,请通知我。