편집 기록

편집 기록
  • 프로필 허대영(소프트웨어융합대학)님의 편집
    날짜2016.07.08

    포인터 배열과 배열포인터를 합칠수 있나요??


    void com() {
        struct TTT {
            char isDup[10];
            char readData[10];
            struct TTT* link[9];
        };
         struct TTT case1;
         char* data;
    
         data = read();
         for (int i = 0; i < 9; i++) {
             case1.readData[i] = data[i];
             case1.isDup[i] = data[i];
         }
    
             case1.readData[9] = '\0';
             case1.isDup[9] = '\0';
             for (int i = 0; i < 9; i++)
                 for (int j = 0; j < 10; j++)
                     *case1.link[i]->readData[j] = case1.readData[j];*
    
             for (int i = 0; i < 9; i++)
                 for (int j = 0; j < 9; j++)
                 {
                     if (case1.isDup[j] == '0')
                     {
                         case1.isDup[j] = '2';
                         case1.link[i]->readData[j] = '2';
                        i++; j = 0;
                     }
                 }
    
    }
    

    오류가 나는 부분인데요 *case1.link[i]->readData[j] = case1.readData[j];* 이부분에서 문자열의 문자를 읽는동안 오류가 발생했습니다. 라는 오류가 뜨네요 요는 배열을 가리키는 포인터들이 여러개 그러니깐 포인터들의 배열이 필요한데요. 각 포인터는 배열을 가리키고요. 그렇게 하려면 어떻게 수정을 해야할까요?? 부족한 질문 죄송합니다 ㅠㅠ

  • 프로필 알 수 없는 사용자님의 편집
    날짜2016.07.08

    포인터 배열과 배열포인터를 합칠수 있나요??


    void com() { struct TTT { char isDup[10]; char readData[10]; struct TTT* link[9]; }; struct TTT case1; char* data;

     data = read();
     for (int i = 0; i < 9; i++) {
         case1.readData[i] = data[i];
         case1.isDup[i] = data[i];
     }
    
         case1.readData[9] = '\0';
         case1.isDup[9] = '\0';
         for (int i = 0; i < 9; i++)
             for (int j = 0; j < 10; j++)
                 *case1.link[i]->readData[j] = case1.readData[j];*
    
         for (int i = 0; i < 9; i++)
             for (int j = 0; j < 9; j++)
             {
                 if (case1.isDup[j] == '0')
                 {
                     case1.isDup[j] = '2';
                     case1.link[i]->readData[j] = '2';
                    i++; j = 0;
                 }
             }
    

    }

    오류가 나는 부분인데요 case1.link[i]->readData[j] = case1.readData[j]; 이부분에서 문자열의 문자를 읽는동안 오류가 발생했습니다. 라는 오류가 뜨네요 요는 배열을 가리키는 포인터들이 여러개 그러니깐 포인터들의 배열이 필요한데요. 각 포인터는 배열을 가리키고요. 그렇게 하려면 어떻게 수정을 해야할까요?? 부족한 질문 죄송합니다 ㅠㅠ