Error using index variable in c++: error:'int index' redeclared as different kind of symbol

The error message is as follows:

/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.

Code:

#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;
}

Explanation: There is a function in the C++ string called index, and I used the universal header file, including this function, the name conflict! !

Conclusion: Use #include<bits/stdc++.h> with caution

Guess you like

Origin blog.csdn.net/Cyril_KI/article/details/109668100