私のプログラムでは、ある時点で を作成しscanf(" %d %d", &num1, &num2);
、SegmentationFault を取得し続けます。理由がわかりません.つまりint
.. それらにメモリを割り当てる必要があるかどうかはわかりません。これは完全なコードです。
typedef struct my_type{
int attr1;
bool attr2;
} my_type;
int main (int argc, char * const argv[]) {
int testCase, result, totalDom, numLines, num1, num2;
int aux_map_int = 0, linesScanned = 0;
bool firstTime;
scanf("%d\n %d %d", &testCase, &totalDom, &numLines);
printf("totalDom: %d; numLines: %d\n", totalDom, numLines);
std::map<int, std::vector<my_type> > my_map;
while(aux_map_int < testCase+1){
std::vector<my_type> my_vector;
firstTime=true;
while (linesScanned < numLines) {
std::cin>>num_dom>>num_next_dom; /** SEGFAULT **/
if(firstTime){
my_vector[0].attr1 = num1;
my_vector[0].attr2 = true;
firstTime=false;
}
my_vector[num1].attr1 = num2;
my_vector[num1].attr2 = false;
linesScanned++;
}
aux_map_int++;
my_map.insert(std::pair<int, std::vector<my_type> >(aux_map_int, my_vector));
}
}