[Study]/[C&CPP]2012. 11. 6. 15:32

C에서 2차원행열을 Malloc으로 메모리 할당하고 사용하다가 가끔가다 이상하게 뻑나는 경우가 있다.

이유는 내가 실력이 부족해서 겠지만... 

아래와 같은 방법으로 2차원 행렬을 1차원으로 표현해서 사용하면 된다.

배열은 알기 쉽게 (0,0) 이 시작이 아닌 (1,1)이 시작이다.

예전에 적어 놓은 것 인데... 가물가물하다.


ps. 근데 행렬인가 행열인가?! ㄱ-? 난 바본가...


/**********************************************************************

* START, 가상2차행열

***********************************************************************/

char *two_d_m(char * str, int i, int j){

//printf("%d\n", m_c * (i-1) + (j-1) );

return &str[m_c * (i-1) + (j-1)];

}

/**********************************************************************

* END, 가상2차행열

***********************************************************************/

Posted by xiasonic