vector中end()和begin()本身值的疑问
#include <vector>using namespace std;using std::vector;#include <stdio.h>void main(){ vector<int> iv1;vector<int>::iterator itve1;for(int i=0;iv1.size()!=1000;i++){ iv1.push_back(i);//在vector中存入1000个元素}printf("======%d\n",iv1.begin());printf("======%d\n",iv1.end());}#include <vector>#include <iostream>#include <stdio.h>using namespace std;int main(){ vector<int> iv1;for(int i=0;iv1.size()!=1000;i++){ iv1.push_back(i);//在vector中存入1000个元素}printf("======%d\n",iv1.begin());printf("======%d\n",iv1.end());return 0;}
[解决办法]
#include <iostream>#include <vector>#include <stdio.h>using namespace std;int main(){ vector<int> v; for(int i=1; i<10;i++) v.push_back(i); vector<int>::iterator it; it = v.begin(); printf("begin:%d\n",*it); for(it = v.begin(); it!= v.end();it++) printf("next:%d-",*it); printf("\n"); printf("%d - %d \n",*v.begin(),*v.end()); printf("u2:%x - %x\n",&(*v.begin()),&(*v.end())); return 0;}