가장 황당한 에러는?

geekforum의 이미지

프로그램을 짜면서 많은 시간을 디버깅에 보내게 됩니다.

그리고 어떤 때는 컴파일러가 뱉어내는 황당한 에러로 며칠밤을 새기도 하죠. 그런 악몽같은 경험을 공유하는 것도 재미있을 듯 합니다.

제가 겪은 가장 황당한 경우는...

헤더파일을 보호하기 위해 #ifndef #define #endif 구문을 썼는데.... 그 상수가 이미 라이브러리 상에 존재했던거였습니다. 역시 인간의 생각이란 비슷한 것 같습니다.

여러분의 경우는 어떻습니까?

댓글

익명 사용자의 이미지

후훗... 인터넷이 안되길래 다시 설정 삽질 하루 내내 셋팅과 재설치 끝에 알아낸 문제...

랜선이 빠져있었음....

바로그때느낀점...

바보란 날 말하는군..

익명 사용자의 이미지

아무리 봐도 계속... const인지... constence인지 에러가 자꾸 날 때... ㅡ.ㅡ;

3일에 걸쳐 모든 함수를 검토하고... 고쳤는데...

클래스 안의 변수를 구조체와 배열부터 하나씩 mutable 시키면 2~30분이면 된다는 것을 알았을 때... ㅡ.ㅡ;
클래스 멤버에 접근하는 함수는 수십개지만... 변수는... 많아야 20개...였으니까...

익명 사용자의 이미지

동의 합니다.....

T.T

허거거

익명 사용자의 이미지

델파이 5.0버전으로 3명이 똑같은 환경해서 작없하는데
두명한테만 계속 에러나구 한명은 에러안나구.

뒤에서 PM째려보구,
정말 열받아서 일주일 고민하다가 되는사람 버전보니까.
내가랑 빌드번호 차이나서 패치했더니 해결 되더만.

괜히 엄한 로직처다보구..
쩝..

그때 델파이가 실터만.

익명 사용자의 이미지

1. 저도 델파이를 사용하지만 이럴땐 OS를 탓해야 하는지 제 자신을 탓해야 할지
NT (Service pack 6)에서 실행 파일 만들어서 "갑"에게 보내 준 후 변경해달라고 해서 그쪽 컴퓨터 windows 2000 (패치가 안되어 있었습니다. )에서 소스 변경한 다음 (전혀 상관도 없는 곳) 컴파일해서 실행파일 주고 왔더니 컴퓨터 리소스 다 잡아 먹고 죽어버린다는 겁니다.
일주일동안 왜 그럴까 내 컴에선 되는데 왜 그럴까 하다가 결국 win 2000 패치 안깔고 그냥 컴파일 해서 돌렷다는 거 알았을 때.

익명 사용자의 이미지

예전에 DB관련된 프로그래밍을 할때....

직접 쿼리를 날리면서 테스트를 하는데...

Update DB set value='xxx' where value>100000

라고 날려야하는데....

where를 빼고 쿼리를 날렸다는....

더군다나...그 DB가 개발DB가 아닌 실제 쓰고 있는 DB였다는....

그 쿼리 날린시간이 1시 12분 입니다.
(지금도 정확한 시간이 기억난다는..--;)
밥먹고 "아~잘먹었다" 하면서
"밥도 먹었겠다.. 다시 시작해야지..."하면서
날렸던 테스트 쿼리....

결국 눈치 아닌 눈치 보고...
매일 밤 10시에 백업이 되니까 그나마 다행이었지...

그때만 생각하면...휴....

익명 사용자의 이미지

재미있는 글이 참 많네요.
한밤중에 많이 웃어봤습니다. ^.*

저는 이글을 쓰기 바로 3시간 전에 헤맸던 겁니다.
(3시간 허비한거네요... 그러니깐...)

처음 버릇이 참 중요한거 같아요.
요즘 초보자용 C 책은 어떤지 모르겠지만, 10년전에 처음 봤던 C책에서 중첩루트의 변수이름은 i, j, k...를 많이 썼었어요.
다른 것들은 이리 쓰지 않는데, 중첩루프만은 고쳐지지를 않더군요.

제가 방금전에 허비한 것.
...
for ( int i=0; i for ( int j=0; i for (...) {

}
}
....
}
...
--;

왠만해선 하지 않던 실수를 요근래 낮과 밤이 바뀌더니 안하던 짓(?)을 하게 되는군요. 헐~

요근래 참 미안했던 짓을 한건...
저희 팀의 통합 소스를 한달 전 백업본으로 바꿔치기를 해버린것.
밑에 분 말씀들처럼 무슨 명령인지 분명히 이해하면서 치지말아야 한다는걸 알면서도 쳤다는 것입니다.
(tar -cvf source.tar
문제는 이 source.tar가 root로부터의 절대패스였다는것. tar를 절대패스로 묶은건 이것이 처음이자 마지막일 것입니다.)

외주팀원과 저희 팀원들을 합쳐 피해가 막심했는데, 정작 본인만 백업 카피가 방금 전것이 있어 무사했지요...
아... 팀장에게 쏟아지는 그 무수한 원망의 눈초리들... ㅡ,.ㅡ;;;

익명 사용자의 이미지

팀 작업을 하시는 거라면 CVS를 써보세요.

그럼 그런 불행한 사태는 방지하실 수 있을겁니다.

익명 사용자의 이미지

모든 버그와 에러를 방지할 수 있는 최고의 프로그래밍 습관

1. 아무 걱정하지말고 푹 잔다.
2. 일어났을때 주변이 조용한 시간대여야만 한다.
3. 샤워를 한다. 배가 좀 고프더라도 밥은 먹지 않는다.
4. 릴렉스된 상태에서 아무 부담없이 소스를 본다.
5. 안보이던 버그가 보이고, 코드가 막 튀어나온다.
6. 약발이 다되고 버벅거리기 시작하면 다시 잔다.

itsup2u의 이미지

하~ 하~ 하~
비슷하시군요..
근데.. 처자가 딸린 몸이 되고보니까..
집하고 가까우면 가능한 일인데.. 멀면..
반대의 상황만 연출되더군여..

1.맨날 걱정을 안고 불안하게 잠이든다.
2.깨어나면 항상 씨끄러운 시간이다.
3.배고프면 아무것도 할수 없고 배부르면 한두시간 자야되고..
4.항상 쫏기듯이 소스보고 문서쓰고 정신없다.
5.버그인듯 싶어서 고치면 더 악화되고 눈이 막 튀어나오져.. ㅠㅠ
6.눈이 말똥말동 해지고 일해야지..싶으면 차떨어질 시간이라 쫓기듯 집으로..
7.집에서도 일해야지 하면.. 마눌의 눈치에 한두시간 하는듯 마는듯.. 결국 시간만 버리고 또 불안한 잠을 청해야 하는..
흑흑

예~~

익명 사용자의 이미지

대체 밥은 언제 먹는거야..
그리고 그러다간 살갖 다 벗겨지겠구만.. ^^

익명 사용자의 이미지

전 디비쪽 프로그래밍을 하구 있는 사람인데요...프로그래밍 오류는 아니구 디비프로그래밍을 하다 보면 짜증나는 일이 좀 있어서요...

대형 벤더에서 판매하는 DBMS 에는 쿼리를 파싱하고 수행 계획을 세워주는 옵티마이저라는게 있자너요... 제일 짜증나는건 테이블 구조 똑같구 레코드수도 거의 비슷하구 ( 차이는 있겠지만 몇건 안나는... ) 인덱스 클러스터링 파티셔닝 등등 동일한 조건으로 만들어 놓구 쿼리 날리면 두대의 서버에서 각각 다른 답을 뱉어낼 때...특히 정렬.... 넘 짜증나여...

머...무지의 소치이겠지만서도 짜증나는건 어쩔수 없군여

허준회의 이미지

디버그로 컴파일하면 잘되는데..릴리즈로 캄파일하면 실행이 안되는경우--;
그 반대인 경우도 있음..

98에서 실행하면 죽어버리고 2000에서는 잘 돌아갈때..--;

IE에서 돌아가는 ActiveX콘트롤을 만들었는데...
IE 버전과 OS버전을 조합해서 제대로 실행이 되거나 안되는 경우...

결국 VC++5.0에서 컴파일해야 95,98,2000에서 제대로동작한다는 사실을 알았을 때.. 그러나 컴퓨터마다 안되는 경우도 있는 경우 --;

물론 본인 실수도 있었지만 IE문제는 아직도 잘 모르겠음.

익명 사용자의 이미지

실험실있을때 일입니다..
몇일밤 코딩을 열심히 하다(잠을 거의못잤음)...
잠시 밖에 나갔다(꽤있었나봅니다) 들어오니깐...
아 글세... 모니터가 꺼져있는겁니다.

순간 소릴 버럭 질렀죠.!! 야 !! 이거 누가 내 컴퓨터 껏어 !!! 어 !!!
조용하더군요...(워낙 소리가 커설..지가 짱이여설)

으~~ 미치겠네... 쿵~(책상내려치는소리) 하면서 전원스위치를 넣는 순간..

휘이잉...

컴퓨터가... 조용히 꺼져 버리더군요. _. _

생각해보니 모니터가 꺼진것은 무슨 모니터 절약 모든가 뭔가하는 설정때매... &&&&&&&&&&&&&&

순간(0.5초정도) 다시한번 전원스위치를 넣쿠 부팅해 봤는데..

쩝~.. 부팅이 안되더군요.

죽고 싶데요..

논문 발표용이었는디.. @.@

익명 사용자의 이미지

저~ 위에 분하고 비슷한 경우인데요.

내가 뭘하고 있는지 뻔히 이해하면서 눈으로 보면서
엔터를 때리고 있을때...

date라는 디렉을 삭제해야하는데..

그것도 아주 조심조심.. 터미널에서 온갖 조심조심을 떨다가

허무하게 알집으로 엡튀접속해서
5일간 작업한 day 디렉을 가볍게 날렸을때...

커억~~~~~~~

익명 사용자의 이미지

이상하네 왜 이런 글은 없을까?

저는 프로그래밍을 할때 가장 무서운 것은 Disk Fail 입니다.

일주일을 열심히 프로그래밍하여 소스도 정리하고 이제 다 했다고

생각하고 파일도 정리하고 컴 껐는데 다시 안켜질때.

(물론 disk가 망가졌다. 10년전이라 디스크 복구서비스를

하는 곳이 내가 아는 범위에서는 없었음.)

남의 컴퓨터에서 열심히 프로그래밍한후 흡족해하며 소스 디스크로

옮기고 읽어지나 확인하고, 하드에 있던 소스 깨끗히 지우고

내 컴에서 파일을 읽으려하면 disk fail 일때 물론 남의 컴퓨터에서

undelete해보지만 파일은 엉겨있다.

정말 최고로 황당했던 기억은

큰일 두번 치르니 꼭 하드와 플로피 동시에 저장해 두었습니다.

그러다 보니 해이해져서 프로피것은 자주 갱신을 안하게 되고

누가 플로피 빌려달라고 해서 무심코 빌려주었는데 하드디스크가

fail 날때.... 물론 플로피가 있었어도 1주일전 소스지만 하나도

없으면 그러라도 아쉬어 망연자실 1주일은 귀신처럼 흐흐흐 하며 다니죠

익명 사용자의 이미지

저 같은 경우에는 보통 서로 다른 드라이브에 두 개 이상의 카피본을 백업해 두죠... (배치파일 써서...)
그리고 디스켓으로 옮기거나 제출할 때에는 반드시...
서로 다른 이름이나 디렉토리 명으로 서너번 정도 카피...
이메일로 전송 & 백업... --;;

디스크 뻑난건 수십번 봤지만...
큰 낭패 본 일은 없는 것 같네요.. ^^;;

항상 백업해 두는 버릇만 제대로 갖고 있다면 쉽게 낭패 보는 일은 없을 겁니다.. :)

white23의 이미지

우선은 아주 간단한 comma(,), 나 semiclone(;) 등의 눈에 잘 보이지 않는 것들을 빠뜨리거나 아님 나도 모르는 사이에 띄워쓰기가 된 경우...
우거 정말 눈 빠지게 찾지 않으면 찾기 어렵습니다.

둘째, 따른 랭귀지랑 헷갈리는 경우...
음... 원래는 한가지만 하기도 벅찬데...
좀더 묵고 살려고 이거 저거 하다 보면은 문법이랑 함수이름 비슷한데 열라 헷갈립니다. 이것도 거의 죽을 맛이죠...
분명히 문법상으로도 다 맞고 틀린곳이 없는데 안돌아 가니간...^^

일단은 이정도인데...

가끔은 컴파일이 잘못될 경우도 있더라고요...^^

<어떠한 역경에도 굴하지 않는 '하양 지훈'>

어떠한 역경에도 굴하지 않는 '하양 지훈' - It's Now or Never!!!

익명 사용자의 이미지

세미콜론 하나 잘못찍어서 고생한적 저도 많아요.

void function();
{
....
}

음냐... 프로그래머의 길은 멀고도 험한길...쩌업..

익명 사용자의 이미지

--이건 질문입니다----답해주세여..

책에 있는 C예제 치다가
gets()이용해서 입력받으려구 하는데..컴파일이 않되더군요.
gcc로 했는데..책은 터보씨책이라서..
그래서 해더화일 찾아보니...한계가 없어서 쓰지말라고 씌여있는데...
그래서 그냥 printf문 썼거든여..
공백있는 문자열 입력 받으려면...어떤 함수 쓰나여?
-------------------------------
넘 초보적인 질문이라..낯 뜨겁군...

white23의 이미지

안녕하세요...

여기는 이런 질문 올리는데 아닌데...
여하튼 이걸 답변 함으로써... 보안에 관한 경각심을 높이기 위해 답변을...

우선은 gcc에서 gets()를 컴파일 할 때 에러를 낸다는 말은 첨 듣는군요...
만약 메시지를 보낸다면 경고 메시지 정도나 보내지 않을련지?
않그러면 gcc 최신 버젼은 아예 이걸 막아 버렸나 보네요...

우선은 gets()를 사용하면 안되는 이유에 관해서 설명을 드리죠...
혹시 BufferOverflow라고 들어 보셨는지?
이건 보통 크래킹에 자주 이용(아주 선호 하는)되는 버그입니다.
이 문제점을 가지고 있는게 gets(), sprintf(), ... 등의 함수가 있는데...
이런것들은 지양해야합니다.
건전한 코드를 위해...

음... 답변이 좀 길어 졌는데...
전 값을 입력 받을 경우 read()함수를 즐겨 사용합니다.
이거 아주 편하고 좋더군요(따른 분들은 어떤지 몰라도)...
read()를 한 번 이용해 보세요...
그리고 이것 말고도 fgets()나 기타 따른 것들이 있겠지만...

그럼...

<어떠한 역경에도 굴하지 않는 '하양 지훈'>

추신_밑의 질문은 저도 Emacs는 거의 사용해보질 못해서 잘은 모르겠지만...
설마 있을 겁니다...^^

어떠한 역경에도 굴하지 않는 '하양 지훈' - It's Now or Never!!!

익명 사용자의 이미지

죄송..하지만..하나더..
이맥스에서 파이썬..신택스하이라이팅 기능 지원 않하나요?
아님 파이썬 모드나..
vi에선 되던데..

익명 사용자의 이미지

lovehis의 이미지

가장 황당한 에러는..

95년에... Dacom 쪽 일을 하고 잇을때였는데.
일본째 모회사 CPU를 가지고 embeded 프로그램을 하고 있었습니다.

첫번째 문제:
그 CPU는 일본 내수용이라서... 일본어 메뉴얼 뿐이 없더라...

해결 방법:
메뉴얼을 번역소에 번역 시키고... 일본어 카타카나(?)를 외워서 해결
(문과 생들이 번역하니까... CPU 메뉴얼이 재미 있게 되더군요.. ^^*)
암튼 해결...

두번째 문제
그 CPU는 one time 이고 smt 타입이라서... 한번 프로그램 하고
납땜질하고... 실행하고... 뜰렸으면.. 다시 짤라내고...
새 cpu에 프로그램을 굽고... 다시 납땜질 하고....
프로그램 하는 시간보다 납땜질 하는 시간이...

해결 방법:
한참 삽질후 1000만원 짜리 ICE를 사서 해결..

마지막... 압권인 문제...
잘 돌아가던 프로그램이... 이상하게 죽기도 하고...
동작이 너무 불안 했습니다... 정말 이유를 모르고... 헉헉...
몇날 몇일을.... 울면서....

해결 방법:
소스 프로그램을(C) 프린트 한후...
이거 컴파일 된때 생성된 ASM file도 출력...
비교.... 했더니...
특정 line을 빼먹고 compile안하더라...
그 허접한 전용 compiler 헉헉...

정말 황당한 버그.... 컴파일러에...
암튼... 그래서 일까... 지금은... 컴파일러 공부를 하고 잇네요... 히히

ps.. 당한 그때는... 정말 허접한 커파일러 라고 욕을 많이 햇지만...
지금 생각해 보니... 그 정도면... 훌룡 햇엇네요... 요즘 제가
만들고 있는거에 비하면... ^^*

익명 사용자의 이미지

ICE하니 생각나는건..

ICE도 하다가 하다가 안되서~. 0101 카드에 찍어보다가.
결국은 된다고 준 카드가 동작을 안하는거 확인하는데..

그때 까지 걸린 삽질의 시간들~. 흑흑

익명 사용자의 이미지

이거 보니 HP에서 제공하는 C 컴파일러도 좀 황당하죠 ^^
gcc는 정말 훌륭한 C 컴파일러라는것을 세삼 실감하게 하는

HP에서 돌아가는 컴파일러는 (특히 C++ )
에러가 나는 위치를 잘 못찾아네요~..

실제 에러가 나왔다고 알려주는 부분에 가보면 전혀 문제가
없고~.. 전혀 예상치 못한 부분에서 찾아내고~.

PLSQL도 마찬가지고~^^ ..

익명 사용자의 이미지

파일 액세스 에러인데..

알고보니 파일 퍼미션 리드온니로 되어있을때.

문제는 이걸 밤샌후 알아냈다는거.. ㅡ,.ㅡ

나 바보다..

익명 사용자의 이미지

커커, 보아하니, 젓더 초보이십니다 그려~ 헤헤~..

익명 사용자의 이미지

프로그래밍, 컴퓨터 왕초보 시절,
} 닫는 괄호로 무지 고생했다.
밤세도록 고민 했다.
소스코드가 길어서 문제 였는데
결국, 아침 10시가 되어서야 알아 냈다.
그다음 부터는 자알 들여 쓰기 꼭꼭 하고 깔끔하게
짜는 습관이 저절로 생겼습니다.
--'

익명 사용자의 이미지

다 아시겠지만..^^
vi를 애용한 후로 그런 parse에러를 상당히 줄인것 같습니다.
vi에서는 parse에러 나타날 기미가 보이면 빨간색으로 변하니까요^^
못잡는 parse도있지만 괄호같은건 거의 잡아여..

익명 사용자의 이미지

인라인 함수로는 아주 간단한 거만 써야한다는 말을 무심코 무시하다가..
낭패를 보았습니다.--
인라인함수를 클래스 객체를 리턴하는 구문을 무심코 적었죠.
(객체 크기가 좀 크죠^^ )
근데..리턴된 값이.. 계속 엉뚱한게 나오는겁니다.
결국 인라인을 밖으로 빼버리니..정상으로 되더군요.
음..인라인 정말 싫다.
이제 bool형도 인라인으로 안쓸랍니다.
속도가 빠르다지만..왠지 불안해서요.
"자라보고 놀란가슴 솓뚜껑보고도 놀란다"고 하던가여^^

익명 사용자의 이미지

인라인 함수의 최대치는 .... 7줄에서 15줄이라고 합니다만....
보통은 3줄에서 7줄 정도 넣습니다.

하지만... 중첩이 되면... 50줄까지도 가능하다고 하네요... ㅡ.ㅡ;

저처럼 인라인 함수의 중첩이 많은 사람은 항상 살얼음을 걷는 기분으로 코딩하죠.

심지어 인라인 함수에서는... 널포인터 체크 부분을 컴파일 시키지 않는 컴파일러까지 있어놔서... ㅡ.ㅡ;
(물론, 지금은 패치되었답니다.)

박기무의 이미지

아주 간단한 스크립트 시험해 보는데 (hello world 출력)

갑자기 파란 화면 뜰때 ㅡ.,ㅡ

redbaron의 이미지

윈도우 거의 한달째 인데...(리포트 땜시..ㅠ.ㅠ)

공감합니다.

ㅠ.ㅠ

익명 사용자의 이미지

캬캬캬

익명 사용자의 이미지

길면 읽지마!

익명 사용자의 이미지

PHP 코딩을 다하고서
회심의 미소를 짓고 실행시켜 보는 순간..
잘못된 구문 에러가 떠서(비쥬얼스튜디오가 깔렸을 경우 자바스크립트 구문이 잘못되면 이런 에러가 뜨져)
해당 라인의 자바스크립트를 아무리 고쳐봐도 에러가 계속 뜨고
아예 그 부분을 없애봐도 에러가 떠서
몇시간동안 삽질하다 결국엔 원인을 알아냈습니다.
<?
?>
를 빼먹었습니다...--;;;
(\" 이런게 자바스크립트 안에 들어가있으니 에러가....T_T)

익명 사용자의 이미지

그럴 때는 브라우저에서 '소스보기' 한번 구경해 보셨어여죠.. ㅡ.ㅡ

익명 사용자의 이미지

그게 몇시간 삽질후에 '소스보기'를 했답니다...ㅠㅠ

liberta의 이미지

Gtk+ 와 OpenGL을 붙여서 전공과제를 하다보면 에러도 아니고, 워닝 한 줄도 없이
깨끗하게 빌드되는 프로그램이... 실행하는 순간 "쥐겨버리는" 일이 간혹 있더군요.
자기만 죽는 게 아니라 엑스고 뭐고 아무튼 다 "쥐깁니다". root가 띄운 xdm이고 뭐고
없죠... ctrl+alt+backspace와는 비교가... 최악의 경우 리붓을 해야 엑스를 다시
띄울 수 있더군요.

오픈지엘이란 넘이 그저 그림 그려주는 라이브러리라는 정도로만 알고 있을 땐 정말 황당...
했죠. 그 넘이 제공하는 고성능이란 것은 그 정도로 저급 수준의 하드웨어 접근이란 걸
알았어야 했는데 말입니다.. 강력한 도구는 그만큼 주의깊게 잘 다뤄야겠죠. :-)

익명 사용자의 이미지

멀쩡하게 잘 동작하던 프로그램이

확장자가 대문자 C라고 컴파일이 안될때....

그리고 그것때문에 gcc다시깔때...

익명 사용자의 이미지

strcmp에서 두 인자값중 하나라도 null값이 있게되면

segment fault가 일어나죠....

처음으로 CGI를 짤때... 아마 counter였나 봅니다..C로..

이전의 접속 IP주소를 받아서 비교하는 거였는데....

Web으로 확인하지 않고.... 그냥....

Terminal에서 했드람니다..... 근 3일 고생한 것 기억나네요...

익명 사용자의 이미지

언젠가 Enterprise 250 Solaris 에서 C 프로그램으로 fork() 가지고 장난하다가 그만 fork()를 무한루프에 빠트려서 결국 재부팅 하게 되었지요..

서비스 하던 서버라서 어떻게 어떻게든 그 프로세스들만 죽이려 했는데..

안되더군여. 그래서 엄청 혼나고 재부팅했던 기억이 갑자기 나네요.

익명 사용자의 이미지

숙제로 c 를 하다.. 짜증나서 마지막에 적어놓은말 한마디.
main()
{
어쩌고
저쩌고
..
..
}
//xxx 교수님바보~ 이것도 숙제냐.

지운다는게. -.- 물론 컴팔도 이상없이, 에러도 없이.. 단지
교수님한테 어지간히 욕먹었던 기억이.. --;;

익명 사용자의 이미지

정말 황당한 기억이군요..
잼따 ^^;;

익명 사용자의 이미지

^^ while 문에서 즐가치 안주엇을때 ㅋㅋㅋㅋ --; 뻑나대여 ㅋㅋㅋ
이건 처음이나 지금이나 ㅋㅋㅋ ^^

legendart의 이미지

지금 음주 상태인데

코딩을 좀 했는데.. 큰일이군

인생은 흘러가는 것이 아니라 채워지는 것이다.
우리는 하루 하루를 보내는 것이 아니라
내가 가진 무엇으로 채워가는 것이다.

- 러스킨 -

익명 사용자의 이미지

뭐니 뭐니 해도 음주 코딩 했을때

전날먹은 술이 제대로 안깼을때는 코딩은 안해야 겟죠

1 시간 작업하면 이틀 고생..

음주 코딩은 에러가 어지간해서는 안보이죠.

익명 사용자의 이미지

제가 아는 선배는 음주 코딩후에 신의 코드를 봤다고 하던데 ..--;

특히나 음주후 글을 쓰면...

이게 자신이 쓴글인지 진짜 의심 스럽다고..

hanui의 이미지

크크....
제가 아는 사람은...
술먹고 무슨 일을 했는지....
다음날 보니.. 자기 컴퓨터가
깨끗하게 포맷되구 linux가
다시 깔려 있었다구 하더군여~!
^^

조성호의 이미지

DEC-UNIX, LINUX, Windows의 Visual-C++...

모든 컴파일에 동일하게 적용되는 에러(?)가 있죠.
이걸 에러라고 해야할지 코딩상의 실수라고 해야할지...

str... 계열의 함수들에서 생기는 문제인데
src쪽인가 desc쪽인가에 NULL이 되면 프로그램이 그냥 종료되는 경우가 있죠.
이거 찾는다고 일주일을 밤새면서... 재미있는건 어떠한 OS에서든 C/C++의
str... 계열의 함수를 사용하면 종료현상이 일어난다는 사실... --;

이건 진짜 황당한 경우인데 TCP/IP통신을 위해서 send(), recv()를 사용하는데
send()의 버퍼가 한정되어있다는 것은 알았는데...
문제는 디버깅을 위해 printf()함수를 사용하면 잘 가던 자료가 printf()함수만
없으면 이상하게 동작한다는 사실...
이것도 몇일 고생해서 알아냈는데...(주변에 알려주는 사람이 없어서... --;)

fflush (stdout);

이 한줄로 모든 것이 해결되더군요... 황당했죠.
그놈의 send() 녀석이 버퍼가 다차지 않으면 자료를 안보낼 수도 있다고 어디선가
언듯 본것 같기에 해본건데... 쩝...

혹 이글보시는 분들 이런 것때문에 밤새지 마시라고 그냥 적어봅니다... *^^*

익명 사용자의 이미지

제가 만든 함수에서는 절대 발생할 수 없는 문제네요.

"엄청난 오버맨"이라는 말을 들어가면서까지....
항상 함수 첫머리에 변수도 지정하기 전에... 인자로 들어오는 주소 값의 널체크를 하기 땜시...
이거 빼버리면 프로그램 크기가 상당히 줄어들거라고 충고하는 친구들이 많습니다.

함수를 인라인으로 2~3번 겹치게 짜는데...
(이런 식으로 짜면... 컴파일러에 따라... 컴파일하는 때에 따라... 전혀 다른 코드가 나옵니다. 인라인 함수 최적화 때문에...)
그 첫머리에 항상 널체크가 온다고 생각해보십시오.. ㅡ.ㅡ;

아무튼 종료 문제가 발생하면... 친구들은 똑같은 기능을 하는 제 코드를 가져다 쓴다는... ㅡ.ㅡ; 대신에 수행시간은 많이 느려진다고 불평하죠.

익명 사용자의 이미지

assert 쓰고 디버깅 모드로 컴파일하는것이 효율적이지 않을까 합니다.

익명 사용자의 이미지

제가 젤 황당한 에러.....
학교 숙제로 프로그램을 짜고 있는데.... C++이었죠...
클래스 배열을 만들었는데 여기에 엄청 접근할일이 잇어서..
클래스 배열을 좀 크게 만들어서 전역에다 넣어버렸습니다..
그리고 한 이틀을 짯습니다. 전 프로그래밍 중간중간에 컴파일하는게
취미라 자주 했는데 이틀후 아무 이상없는 루틴을 추가했는데
실행시 에러가 나는것입니다. 그런데 도저히 원인을 찾을수가 없었네요.
제가 추가한 루틴은 절대로 아무 상관없는 부분인데.. 디버깅을 한결과
exit(0) 이부분에서 에러가 나더군요.. 그래서 좀더 return도 써보고
별짓을 다했지만 에러가 나는부분이 어딘지는 확실히 알았죠
main마지막 부분이었습니다. 다 수행되고 거기서 에러가 나더군요.
전 미치는줄 알았죠.. 숙제 낼시간은 다가오고..
그래서 별짓다하다가 하지도 못하는 디스어셈블리까지 해서.. 찾아본결과
ret 라는 명령어에서 에러가 나더군요 그래서 찾아본결과
호출한 원래의 어드레스로 돌아가는 명렁어인데
놀라운점은 호출주소가 없어서 돌아가지를 못했다는 것입니다.
전 오랫동안 생각을 했고 결론을 내린게 전역에다 너무 큰 변수를 잡았다는 것이라고 판단을 내리고 그 클래스의 크기를 좀 줄였더니 ret문이
잘돌아가더군요... 황당한 에러... 엿죠..

전역변수에 대한 또다른 일화입니다...

그러고 또 숙제가 나왔죠... 전 그때 너무 당했던터라 그뒤부터는 전역을
잘 쓰지 않았씁니다... SIC/XE 어셈블러를 만드는 숙제였죠...
이게 해보신분들은 알겠지만 블럭하구 섹션이 생기면 심볼테이블을 계속 생성해야되는데 전 메모리를 줄이려구 new로 만들어나갓습니다.
첨에는 이상이 없었지만 심볼테이블 블럭테이블 외부 참조 테이블 op테이블
계속 만들다가 어느순간 fout << nLocctr;
을 한순간 에러가 나더군요.. nLocctr은 0이란값이 들어잇엇습니다.
fout은 파일스트림이었구요..
그전까지는 아무 이상없이 되던 부분이 에러가 나니 미치는줄 알았습니다.
그래서 디버깅을 하며 여러가지를 수행해보다가 좀 디버깅을 깊게 들어갓습니다
fout 의 깊숙한부분까지 갔더니 널쪽에서 에러가 나더군요...
0하구 널하구 관련이 잇나 생각했지만 별로 관련없을것 같아서 더 깊게 갓더니 _malloc인가 이상한부분에서 에러가 생기더군요..
fout이 내부적으로느 찍기전에 메모리를 할당하고 찍나 봅니다.
근데 왜 잘되던게 여기서 에러가 나니까 황당하더군요..
열라 고생을 하다가.. 생각난게 전역문제가 떠오르더군요..
역시 전역하고는 마찬가지로 메모리 heap영역을 사용하는 new부분이
생각나더군요.. 이번에는 new를 아무리 줄여도 안되더군요 그냥 주석으로
만들어야 실행이 되는것이었습니다. 그래서 결국 new로 안쓰고 그냥 다 보통으로 만들어버렸습니다. 그랬더니 고쳐지더군요...
역시 전역변수 heap은 무서운거네요....

익명 사용자의 이미지

글이 왜케 길어

누가 읽겄냐

익명 사용자의 이미지

안 읽은 사람이 댓글은 무신... ㅡㅡ;

익명 사용자의 이미지

전 아주 감명깊게 읽었는데요..
여기는 한분 한분의 경험담을 적음으로써 여러사람의 간접경험으로 이끌어내기 위해 존재하는 곳이라고 생각함다...
자신이 경험했던 버그에대해, 보다 자세히 적는편이 옳다고 보는데..
자기 자신이 관심없다고 글에대해 폄하하는자세는 올바르지 않다고 생각합니다.
허접한 유머를 원하시는거라면 어디 엽기싸이트나 돌아다니시지요

장수원의 이미지

제가 읽었는데요 :)

익명 사용자의 이미지

길면 읽지마!

익명 사용자의 이미지

제가 95년도 쯤 모대학교 VOD 서비스 검색엔진 모듈쪽을 만들고 있을 때였습니다. 그날 밤을 전 아직도 잊지 못하고 있습니다. 몇일을 밤을 새며 일을 했던지라 저도 피곤하고 매우 졸음이 오는 상태였습니다.
작업이 거의 마무리되고... 잡다한 오류를 해결했으며 거의 98%의 공정을 마쳐가고 있었습니다. 나머지 2%는 서버에 붙여놓구 테스트 하는 것!
하지만... 운명의 장난인지... 귀신의 장난인지... 전 마지막 명령의 실수를 잊지 못합니다. 실수... 절대 인정할수 없습니다. 전 그렇게 하지 않았다고 믿고 싶었습니다. 그 모듈은 가장 중요한 부분의... 아마도 그 프로그램중 가장 긴 프로그램소스 였다고 생각되어 집니다.

그날 밤의 작업입니다.

#include
...
...
...

int main(void) {
...
...
절라 ....
절라 ....
밤새 ....
밤새 ....
...
...
절라 ....
절라 ....
밤새 ....
밤새 ....
...
...

}

:wq!

^^ <----- 만족감에 오는 웃음...

#gcc -o xxxx[ESC] xxxx[ESC]

O.O <------ 자신이 한짓을 눈치 챔...

ㅜ.ㅜ <----- 밤새 억울함을 흘림...

[진짜 초보를 위한 번역]
#gcc -o hello.c hello.c
위 처럼 컴파일하면... 소스가 없어지면서... 실행화일로 둔갑 ^^;

아마 전 그때 초보였나 봅니다.

익명 사용자의 이미지

저도 그런일 있었습니다.
특히 숙제내기 몇시간전..겨우 성공했을때 허둥대다가.-_-;;
절라 황당~
열받어도 어따대구 화풀이할대두 없더군요.-_-;
그때부텀은 디렉토리 뒤지면서 몇일전 소스 카피해둔거 없나 뒤집니다.

익명 사용자의 이미지

저는 그래서 어떤 프로그램을 만들때 먼저 Makefile 만들어 놓고 시작합니다.

저도 몇번 그런 기억이 있어서리

송재홍의 이미지

요즘 vim 은 백업파일 알아서 만들어주는데...

프로그래밍하고는 상관없는 얘기지만, 웹호스팅업체에 있을때 한 500 개쯤 되는 가상호스팅을 하고있는 서버의 httpd.conf 를 걍 지워버린경우가 있었죠.... <- 윽 다시 생각하기 시러!!

vim 을 쓰면 일단 한번은 막아줍니다... 지웠을때나, 내용을 지우고 저장했을때..

조아요~~ Vim

익명 사용자의 이미지

눈으로 빤히 그 명령을 보고 무슨 뜻인지도 이해하면서
그 순간 엔터를 때리고 있는 자신을 발견하죠.
미칩니다. -_-;

from [ke'izi] : where is [r]?

박응주의 이미지

마자요. 큭큭
저도 위와 같은 경우가 있었거든요.
rm -rf도 한 두번 했었구...

근데 명령을 내린 후에는 걱정보다는 "내가 한게 아냐"라는 생각만이 계속...
흘... 진짜 황당하고 자신이 싫어지죠. :-)

익명 사용자의 이미지

좋은 정보 주셔서 감사합니다.
정말 그렇게 되네요.. ^^

익명 사용자의 이미지

헛... 너무 안되셨네요.. 그런 가슴아픈 기억을..
저는 그런 실수는 쬐그만 프로그램으로 테스트할 때 했었는데
그때도 가슴이 아팟는데 님의 심정은 거의 죽을맛이었을것 같습니다.
전 그래서 꼭 make를 이용해서 컴파일하죠..~~,.

박영록의 이미지

이분이 짱인 듯.--;

익명 사용자의 이미지

흐흐...

저도 그런 경험 있습니다...

일주일을 하룻밤처럼 짠 모든것이...

한순간에...

그리고 5시간만에 비슷하게 보이는 버그덩어리를 다시 만들어 냈던 기억이..

기.억.두.하.기.싫.네.요

익명 사용자의 이미지

헉~

익명 사용자의 이미지

으키키 미티겄다.. 헤헤헤,, 으헤헿헤헿헤~~~~~~~~

케케케~~~~~~~~~~

익명 사용자의 이미지

황당한 에러라고는....

실수로 dim a as double 안해서...

컴터가 부동소수 연산도중에 다운이 되었을때...-_-

익명 사용자의 이미지

vc++로 짠 프로그램이 었는데

어느 컴퓨터에선 잘 돌아가고 어느 컴퓨터에서는 죽었었죠.

저는 제 자리에선 아무 이상이 없어서 다른 사람 잘 못이라고 생각하고 있었죠..

정말 몇달을 그렇게 시간을 보냈죠.... ( 그 일에만 매달린게 아니니 )

정말 도무지 모르겠어서 다른 사람이 본적도 있는데 못찾더군요.

여러분은 어떠신지 모르겠지만 가끔 맘을 비우고 코드를 보다가

보면 정말 기막히게 어떻게 이걸 몰랐나 할 때가 있죠.

바로 그런 경우였스빈다.

-1.7e+308( double 형의 최소값 ) 인가로 가장 작은 수로 표현한다는게

실수로 1.7-308로 써버렸던 거에요.....크...

심심하신 분들은 자신에 컴퓨터가 어떻게 반응하는지 테스트 해보세요~ ^^

익명 사용자의 이미지

자신만만하게 매크로 안하고 여기저기 훌다가 나중에 잘못되서
다 찾아 고칠떄..이럴떈 그냥 소스를 지워버림...

잘 프로그래밍 해놓고 컴파일도 잘 했는데 고칠게 있어서
고칠거라고 컴파일 해놓은 파일 파일 지우는 습관대로 rm *
했을때(이건 내가 바보라서 그렇지)

하지만 이런건 문제도 아니지...
제일 열받는게 아니 용서 될수 없고..나를 자괴감에 빠지게 하는건

아무런 준비없이 생각나는 대로 그때그떄 코드 추가하며 몇백줄
이나 되는 코딩해놓고 저장하고 잠자고 일어나서 코딩 다시 할라고
소스보는데 이 소스를 전혀 못알아볼때....
(이럴땐 찐짜 죽고 싶지)

익명 사용자의 이미지

맞아요...
뜬눈으로 밤새면서 피곤한 몸으로 코딩하다가....
결국은 잠깐 수면을 취하고 나서 다시 코드를 들여다보면...

"어! 어제 내가 무슨짓을 한거지....???" 하는 생각이 들때...

익명 사용자의 이미지

VC++ 6.0 에서는 다음과 같은 게 있으면 에러가 나더군요..

enum { .... , div = 3 };

enum 안에서 div라는 게 오니까 에러가 나더군요..

div를 다른 단어(divi같은..)로 바꾸면 에러가 나지 않습니다.

fatal error : cannot execute cl.exe 인가...

cl.exe 는 실제 컴파일러 입니다..

아무튼 신기했습니다..

아직은 제잘못이라고는 생각하지 않고 있습니다..^^

익명 사용자의 이미지

교수님 왈...

> enum { .... , div = 3 };

> enum 안에서 div라는 게 오니까 에러가 나더군요..

> div를 다른 단어(divi같은..)로 바꾸면 에러가 나지 않습니다.

> fatal error : cannot execute cl.exe 인가...

어셈블을 시키면 당연히 링킹 에러가 난다고 하시던데여...
div가 명령어로 인식되어서... ㅡ.ㅡ;

익명 사용자의 이미지

혹시 이것땜시....? :-)

$ man div

C Library Functions div(3C)

NAME
div, ldiv, lldiv - compute the quotient and remainder

SYNOPSIS
#include

div_t div(int numer, int denom);

ldiv_t ldiv(long int numer, long int denom);

lldiv_t lldiv(long long numer, long long denom);

익명 사용자의 이미지

그런게 있나요??^^

하지만 그렇다면 좀더 다른 에러 메세지가 나왔어야죠..

Duplicated symbol..

머 이런 식으로 말이죠..

haru의 이미지

얼마전 .... 일년만에... java program하다가....

코딩하고....
$java TCPSocket.java
....

익명 사용자의 이미지

DOS 시절 이야기입니다.

C 언어를 배운지 오래지 않았을 때였습니다. 그 날도 평소와 마찬가지고, 볼랜드 C++를 실행시키고 소스를 컴파일 하는데 첫행에서 부터 컴파일 에러가 나더군요. 문법이 틀렸다나요?

첫행의 내용은 아래와 같았습니다.

#include

아무리 살펴봐도 왜 문법 에러가 나는지 이해 할 수가 없었죠. 그렇게 고민하기를 수분여....

결국 원인을 알았습니다.

bc라고 친다는 것이 아무 생각없이 bp(볼랜드 파스칼)을 실행했던 것이죠. -_-;

원인은 정말 사소한데 있더라는...

익명 사용자의 이미지

도저히 이해할수 없는 버그로 1주일 이상 밤낮으로 고생하며
수많은 테스트 결과 C Compiler의 버그로 판명되었을때..

iron의 이미지

내가 짠 인터프리터로 코딩하는데,
내가 모르던 에러 날때 -.-;;

for(;;)
{
..
}

에서,
for 문안의 공백을 false 해석하게
해놔서 안돌아 간다든가..

익명 사용자의 이미지

ㅋㅋㅋ 이경우엔 도저히 알수 없겠군..

Renn의 이미지

C 로 CGI 짤 때... Internal Server Error... 아파치에러로그에는 헤더가 잘못되었다나?

소스는, 같은 내용의 코드가 위,아래에 있고, 위의것은 실행되지만, 아래것은 실행되지 못함. -_-; 원인불명. 포인터사용무. 배열사용시 for 루프에서 인덱스용 변수 i 는 물론 초기화해서 사용...

이런 말도 않되는 문제점은... gcc 가 96.xx 라는 괴상막칙한 버전이라는
것을 보고 소스 문제로 삼지 않음. -_-;;;

하여간, C나 기타 언어로 CGI 프로그램을 짤 때 정말 알 수 없는 에러를 보곤 하죠 --;;;

익명 사용자의 이미지

서버측 비베 컴포넌트를 만드는데

비베에선 ActiveX Dll로 컴파일 한번 한 dll은

regsvr32.exe로 다시 죽여주고 다시 컴파일 해줘야 하는데

그렇게 않하고 컴파일 된느대로 갔다 썼더니. 그 컴퓨터 나중에

젓되서.... 쓰도 못하고 완전 x골 난 경우~

여린칼날_의 이미지

황당하다고 하면 의미가 약간 아리까리하니까니...

제가 경험했던 것들 생각나는 대로 쓴다면,

* 의미없는 고생을 많이 선사했던 에러
; IIS 에 모 애플리케이션 서버에서 제공하는 API를 가지고 ASP Component 만들었을 때 시스템이 심심하면 죽었던 경우 - 알고보니, 그 애플리케이션 서버에서 제공하는 API 라이브러리는 Visual C++ 5.0 기준으로 되어 있었고, 제가 썻던 컴파일러는 Visual C++ 6.0 이었습니다. 그런데, 양 컴파일러간에 malloc/free 가 호환이 안되어서 api 를 사용해서 memory alloc 한 것은 그 api 에서 제공하는 free 를 이용해서 풀어주어야 했고, 제가 스트럭처를 malloc 한것은 제 프로그램에서 풀어주어야 했던 것입니다. 쩝... 프로그램이 그리 복잡하지 않아서 개노가다는 피했지만, 무식해서 해결하기 힘들었던 그 생각을 하면...

* 자괴감에 빠뜨렸던 에러
StrongARM 프로그램을 만들고 있을 때였습니다. 어셈으로 CPU 초기화하는 루틴을 만들고 있는데, 아무리 해도 안되는거에요. 한 3일간 머리싸매고 고생하다가, 문서를 다시한번 읽었더니 레지스터 번지를 잘못 쓴 거였습니다. (StrongARM 은 메모리에 일부 컨트롤 레지스터가 메모리에 매핑됩니다. 레지스터에 어떤 값을 주려면 특정 메모리 번지에 그 값을 쓰면 되는 거죠.) 자신에게 화가 났던 것은 "내가 알고 있는 것이 정확해" 라는 아집 때문에, 레지스터 표르 보면서도 "맞는데 왜 안되지?" 라고 착각했던 제 자신이었습니다.

* 화나는 에러.
서버쪽 프로그래밍할때 나타났던 에런데, 됐다가 안됐다가 하면서 에러를 발생시키는 조건을 찾을수가 없는 에러가 있습니다. (전 이런 에러를 ISS 4.0 에서 많이 겪었습니다.) 정말 화가 납니다. 디버거로 찾으려니 막막하고, 종료기한은 다가오는데 원인은 모르겠고... 그때 옆에 있었던 MS 모 양반이 한 말이 일품이었습니다. "우리는 에러를 다시 발생시킬 수만 있으면( 에러가 나는 컨디션을 알게 되면 ) 그 에러는 반은 해결됐다고 봅니다." 남은 밤새도록 개뺑이치고 있는데, 옆에서 하는 말이라니...

* 허탈했던 에러
DB 에서 스토어드 프로시저를 좀 복잡한걸 만들었는데, 스트레스 테스트만 하면 계속 데드락이 걸리는지 죽는 겁니다. 것두 한 2~3일 헤메고 별 쑈를 다 했죠. 어떻게 해결했냐구요? 패치 적용했더니 한큐에 끝났습니다.

에러는 프로그래밍을 하시는 분이라면 언제라도, 아니, IT 쪽 일을 하시는 분이라면 언제라도 마주칠 수 있는 것이라고 생각합니다. 그런데, 저처럼 경험이 많지도 적지도 않은 어정쩡한 사람들이 좀 허탈한 에러때문에 고생하게 되는 것 같습니다. 저같은 경우는 누구라도 쉽게 파악할 수 있는 문제로 인해 발생하는 에러 때문에 고생을 많이 했습니다. 자신감이 지나치면, 혹은 문서에 대해 겸손하지 못하면 문서가 바로 옆에 있어도 그 부분은 보이지 않습니다.
식스 센스에 보면 가슴서린 대사가 하나 나오죠. "그들의 눈에는 자신이 보고 싶어하는 것만 보여." 자신이 만든 코드에 대해서 선입견을 - 이런건 틀렸을 리가 없어. 이 부분에서 에러가 났을리가 없어. 이건 제품이 잘못돼서 생긴 문제야. 내가 이걸 잘못 이해하고 있을리가 없어. 이건 뻔한 내용이야... 와 같은 - 가지게 되면 그 눈에는 아무것도 안보입니다. 에러가 나면 밤새서 무식하게 매달리지 말고 밖에 가서 좀 쉬다 오라는 말을 듣죠. 제가 아는 어떤 사람은 안풀리면 술을 마시고 디버깅을 한다고 하는데 - ^^; 이랬을 때 정말로 문제가 해결이 되는 경우가 많습니다. 근데 제 경우에는 선입견 때문에 눈이 가려져서 해결하지 못했던 에러였습니다.
위에서 적은 에러들도 가만히 보면 readme 파일이나, 패치 파일의 내용, errata파일, 칩 레퍼런스 등을 조용한 마음으로 가만히 보면 쉽게 해결할 수 있는 에러였습니다. 허탈하죠.

제 생각에, 가장 빈번한 에러의 소스는 우리(아니면 저만일수도 ^^;)의 선입견이 아닌가 합니다.

모두들 좋은 하루 되세요~

익명 사용자의 이미지

제 생각에, 가장 빈번한 에러의 소스는 우리(아니면 저만일수도 ^^;)의 선입견이 아닌가 합니다

----------------------------------------
정말 멋집니다!!!

익명 사용자의 이미지

소스는 이상없는데...

"잘못된 프로그램 연산를 해서 종료합니다.."라는 메시지가

뜰때, 아예 살맛도 안나고 프로그램 뿌셔서 개주고 싶은 심정이었

슴 "자세히"를 누르면 Stack Dump(스딱 떰프)라는 메시지가 숨어

있는아주 고약한 에러메시지요! 더 열받는 것은.....

그걸로 나의 소중한 소스를 일부분 일은 적도 있슴....

저장도 안하니.~~~~~~~~~~~~~~~~~~~~~~~~~~~

익명 사용자의 이미지

다들 비슷한가봅니다.

컴파일러 언어는 그래도 로직 문제에서 곤란을 격지만,

인터프리터 언어는 사람잡죠.

예전에 AutoCad내에서 동작하는 AutoLisp로 개발하다..

. (dot) 하나를 놓치는 바람에.. 죽는줄 알았심다.

하루를 꼬박 뜬눈으로 - 납기 전야라 -

눈을 조금 붙이고 나서야 보이더군요.

쩝~~

페이지

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.