我正在尝试创建一个程序来分析输入的单词,看它是否是回文。
我正在做这一点,到目前为止这是我的代码:
Word: marcus
a: s b: m
a: u b: a
a: c b: r
a: r b: c
a: a b: u
a: m b: s
它产生我想要的输出:
"createdRow": function( row, data, index ) {
if (tableInitialized){
flashRow( row );
}
但是每次我运行它都会给我这个错误:
调试断言失败!行:106
表达式:“(_Ptr_user&(_ BIG_ALLOCATION_ALIGNMENT - 1)))== 0”&& 0
我做错了什么?
答案 0 :(得分:2)
cin >> word;
结合main()
的无效参数签名:
int main(string word) {
// ^^^^^^
从操作系统相关的绑定代码中解除main()
函数的调用堆栈。
这就是您收到调试断言错误的原因。
答案 1 :(得分:1)
首先,Double int1, int2, int3 = some values
没有main
类型的参数。在函数体内做一个声明:
string
还有一些建议:代码很混乱!目标是循环输入字符串并显示相应的字符,所以就这样做。对于位置int main() {
std::string word;
的字符,字符串背面的相应索引为i
。首先只需这样写,并确保它有效。然后可以将word.length() - 1 - i
存储在单独的变量中。除此之外,更多变量只会让人更难看到发生了什么,并且不会使代码变得更好。