There are 1 articles in '무제'
  1. 2007/11/29 Untitled

2007/11/29 00:49

Untitled

그냥 그저 그렇게 흘러가는 하루. 생각해보니, 집에 와서 세수도 안했다. 회사에서 저녁을 먹기 싫어서 꾹참고 집으로 왔다. 이미 치워진 상을 다시 차려서 혼자 먹고 나니, 배가 불러서 인지 춥고 배고파서 움츠러 든 몸이 나른해진다. 나른해져 버리니 만사가 다 귀찮다. 그래서 <textarea> 에다가 내용을 입력할 때, 타이핑 소리가 나도록 하는 것을 만들고 싶어졌다.(사실은 어제밤에 만들려다가 손을 댔다가는 다음날 지각이 뻔해서 그냥 꾹 참고 잤다)
뭐 어쨌든. 그리하여 우여곡절 끝에 대충 소리는 나게 만들고 나니깐, 한글 입력은 또 윈도우 IME 에서 해주는 거라서 자소단위로 입력할 때는 onkeypress 이벤트가 발생하지 않는 갑다.(Characters entered through an IME do not register through keyCode or charCode. http://developer.mozilla.org/en/docs/DOM:event.keyCode ) 별로 답이 안나옴을 느낀다. 이 정도 장난거리 가지고는 하루의 피로도 그닥 가시지가 않는다.

그래도 회사에서 오늘 짧은 시간 집중하여, 고질적인 메모리 깨먹는 버그를 하나 잡았다. 별건 아니고 대충 요약하면 아래와 같은 코드다.


대략 이런 시츄에이션..? (Language : c)
  1. struct {
  2.   char *list[20];
  3.   int id[20];
  4. } type_t;
  5. int func(const char *str, int id)
  6. {
  7.   int i=0;
  8.   type_t some;
  9.   for ( i=0; i < 20 ; i++ ) {
  10.     if ( some->id[i] == id )  {
  11.       some->list[i] = malloc(300);
  12.       memcpy(list[i], str, strlen(str)+1);
  13.     }
  14.   }
  15. }

답: str 의 길이가 300 이상이면 넥서스 옆에 마인박아놓은 꼴이다.

물론 딱 한눈으로 보기에도, 문제가 있음을 알 수 있다. 근데, 저놈이 수천개의 파일중에 어느 누군가의 실수로 슬쩍 숨어들었다면... 찾기는 정말 쉽지 않다. 이런 코드로 몇날 며칠을 삽질하다 보면, 정말 C 는 할게 못된다는 생각을 하게된다. 그래도 오늘은 쉽게 잡은 편인데... 기분은 그닥 업이 되지 않는다..
그냥 아무거나 적어내려 가려 했는데, 결국엔 코드가 등장하는구나. 너도 참...

내일은 기운을 차려보자. 나만의 우주를 창조하는 작업을 계속하자. 전파 수신 양호.

2007/11/29 00:49 2007/11/29 00:49
[top]
TAG :: ,