c++中使用index变量报错:error: ‘int index‘ redeclared as different kind of symbol

报错信息如下:

/judger/run/e9f1df8da21548be9d76e7a59262ca1f/main.cpp:7:5: error: 'int index' redeclared as different kind of symbol
 int index = 0;
     ^
In file included from /usr/include/c++/5/cstring:42:0,
                 from /usr/include/x86_64-linux-gnu/c++/5/bits/stdc++.h:48,
                 from /judger/run/e9f1df8da21548be9d76e7a59262ca1f/main.cpp:1:
/usr/include/string.h:477:1: note: previous declaration 'const char* index(const char*, int)'
 index (const char *__s, int __c) __THROW
 ^
/judger/run/e9f1df8da21548be9d76e7a59262ca1f/main.cpp: In function 'int main()':
/judger/run/e9f1df8da21548be9d76e7a59262ca1f/main.cpp:19:13: error: 'index1' was not declared in this scope
   cout << A[index1] << endl;
             ^
/judger/run/e9f1df8da21548be9d76e7a59262ca1f/main.cpp:20:8: error: no post-increment operator for type
   index++;
        ^
compilation terminated due to -fmax-errors=3.

代码:

#include<bits/stdc++.h>
using namespace std;
#define ll long long

const int maxn = 3e4 + 5;
ll A[maxn], B[maxn], m, n;
int index = 0;

int main() {
	cin >> n >> m;
	for(int i = 0; i < n; i++) {
		cin >> A[i];
	}
	for(int j = 0; j < m; j++) {
		cin >> B[j];
	}
	for(int k = 0; k < m; k++) {
		sort(A, A + B[k]);
		cout << A[index] << endl;
		index++;
	}
	return 0;
}

解释:c++的string中有一个函数就叫index,而我使用了万能头文件,包含了这个函数,命名冲突了!!

结论:慎用#include<bits/stdc++.h>

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Cyril_KI

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值