컴퓨터일반174 Wolfram-Alpha 재밌네요~ 많은 사람들이 네이버나 구글등은 알고 있지만 Wolfram-Alpha 에 대해서는 많이들 모르는 것 같은데요. Wolfram-Alpha 는 매스매티카로 유명한 울프럼 리서치에서 만든 검색 엔진 입니다. Wolfram-Alpha 의 사이트 주소는 아래와 같습니다. http://www.wolframalpha.com/ 첫 화면은 아래 그림처럼 생겼는데 밑에 있는 조그만 그림들에 마우스를 갔다 대면 화면이 밝게 변하면서 각 컨텐츠에 대해 확인 할 수 있습니다. 수학 프로그램을 만든 회사에서 만들었으니~ 일단 수학적인 기능들은 굉장히 돋보이는데요~ 대충 아무 식이나 한번 넣어보죠~ 저는 sin(x)+cos(x) 라는 식을 넣어봤는데요~ 뭐 기본적인 그래프부터~ 미분 적분 결과~ 그리고 series expansio.. 2013. 1. 5. 이미지로도 검색이 되는~ 구글 이미지 검색 인터넷 서핑을 하다가 멋진 이미지들을 봤을 때 이게 뭘까 하는 생각 많이들 하셨을 겁니다. 그런데 대부분의 검색 엔진들은 텍스트로만 검색이 되다 보니 해당 이미지가 어떤 것인지 검색을 하려면 애를 먹곤 하죠~ 그런데 구글 이미지 검색은 이미지로 검색도 가능하더군요. 역시 구박사는 검색에 있어서 만큼은 탁월한 것 같습니다. 아래 이미지는 제가 웹 서핑을 하다가 본 멋진… 자동차 입니다. 사진이 참 멋져서 아래 그림을 하드에 다운로드 받았습니다. 그런데.. 자동차에는 문외한인지라 저 차가 뭔지는 모르겠더군요. 그래서 구글 이미지에서 이미지를 이용해서 검색해 봤습니다. 아래 그림처럼 구글 이미지 검색에 들어가서~ 빨간색 네모칸 친 부분의 카메라 모양 버튼을 누릅니다. 그럼 아래 그림처럼 이미지 주소를 넣을 수.. 2012. 12. 3. C/C++ file open path seperator 코딩을 하면서 파일을 다루는 건 굉장히 흔한 일입니다. 보통 C/C++ 코딩시에는 fopen() 등을 이용하여 파일을 읽고 쓰고 하는데 운영체제에 따라 path seperator 가 다르죠~ 윈도우에서는 흔히들 알고 있듯이 path seperator 가 \ (역슬래시)이고, 리눅스 계열에서는 / (슬래시)죠 ~ 리눅스에서야 별 문제가 없지만 윈도우에서는 C:\test.txt 와 같은 경로의 파일을 C/C++ 코드에서 열 때~ 아래 코드와 같이 하면 에러가 발생하게 됩니다. ofstream outfile; outfile.open ("C:\test.txt"); 이는 C/C++ 에서 \(역슬래시) 가 아래와 같은 escape sequence 를 나타내기 위한 기호로 사용되기 때문이죠~ \a Bell (aler.. 2012. 11. 23. Windows 심볼릭링크파일 vim으로 편집 후 저장할 때…. 링크가 왜 깨질까? 리눅스에서 심볼릭 또는 하드링크는 굉장히 많이 사용합니다. 윈도우에는 이런 기능이 없나… 해서 찾다 보니 역시 있더군요. 하드링크는 원래 XP 에서도 있었다고 하고 심볼릭 링크는 비스타부터 생겼다고 합니다. 이에 대한 좀더 자세한 내용은 아래 주소 참조하시길 ~ http://forensic-proof.com/archives/2058 위 링크한 페이지에서 보는 바와 같이 윈도우 비스타 이상에서 심볼릭, 하드 링크와 디렉터리 교차점을 만들기 위해서는 mklink 라는 명령어를 사용합니다. 다음 그림처럼 command 창에 mklink /? 라고 명령하면 사용법을 알 수 있습니다. 심볼릭 링크는 파일 또는 폴더에 대해 링크를 할 수가 있고~ 다른 볼륨에 있는 것들도 링크가 가능 합니다. 즉, C:\ 에 있는 .. 2012. 11. 16. Ubuntu 에서 cmake 사용시 CMAKE_CXX_COMPILER-NOTFOUND 에러 책 보면서 cmake 따라 해 보다가 아래 문자와 같은 에러를 만났습니다. CMAKE_CXX_COMPILER-NOTFOUND 책에 하라는 데로 똑같이 따라 했는데.. 저런 에러를 만나니 무지하게 당황 되더군요. 책에는 저런 에러 없었는데 말이죠. ㅋㅋ 그래서 구박사에 질문을 하니 역시.. 답변이 있더군요. 위 에러는 빌드 툴이 없어서 그런거라네요. 그래서 다음과 같은 터미널 명령어로 build-essential 을 설치해 줘야 한다는 군요. sudo apt-get install build-essential -y 이후에는 cmake 가 정상적으로 되더군요. 2012. 11. 4. VirtualBox 홈페이지 주소 바뀐건가…. 간만에 VirtualBox 좀 깔아 볼라 했더니~ 이전에 사용했던 아래 주소가 안 들어가 지더군요. https://www.virtualbox.org/ 그래서 좀 찾아보니 아래 주소는 들어가지네요~ http://www.oracle.com/technetwork/server-storage/virtualbox/downloads/index.html 위 주소에 들어가보면 아래 그림 처럼 platform별로 설치 파일 있으니깐~ 자신의 운영체제에 맞는 파일 다운로드 받아서 설치 하시면 됩니다. 저처럼 VirtualBox 깔려고 구글에 검색했다가 주소가 안 들어가져서 급 당황 하실 분들을 위해 글 남깁니다. 2012. 11. 4. C/C++ 매개변수를 갖는 매크로, #, ## 연산자 C/C++ 코딩시 매크로는 #define 을 사용하여 다음과 같이 정의하곤 합니다. 단순하게 상수등을 다음과 같이 정의하곤 하지만~ #define PI (3.141592) 상수 뿐만이 아니라 매개변수등도 이용할 수가 있습니다. 사용법은 굉장히 단순한데요. 다음과 같이 원의 넓이를 구하는 매크로를 구성할 수 있습니다. #define CIRCLE(x) ((x)*(x)*(PI)) 매크로 정의시에는 항상 모든 부분들을 괄호를 이용하여 꼼꼼하게~ 묶어 주는 게 좋습니다. 그렇지 않으면~~ 까딱 잘못하다가 예상치 못한 결과를 얻을 수 있거덩여~ 다음으로 # 연산자를 간단하게 소개하겠습니다. 이미 많은 분들이 아시겠지만, # 연산자는 매개변수를 문자화 하는 연산자 입니다. 다음과 같이 사용합니다. #define ST.. 2012. 10. 29. Mingw Makefile 을 사용한 빌드 윈도우에서 gcc 를 사용할 때 저는 아래와 포스팅에서 밝힌 바와 같이 codeblock을 주로 사용합니다. 2012/10/14 - [유틸] - Codeblock doxygen plugin DoxyBlocks 2012/08/26 - [컴퓨터일반] - CodeBlock 에서 FFTW 라이브러리를 사용한 FFT 실습 2012/07/31 - [컴퓨터일반] - Codeblock 에서 DLL 사용하기 codeblock 과 mingw 를 통해 GCC 를 사용하지만, 역시나 IDE 를 사용하여 개발하는데 익숙하다 보니 Command Line 을 통한 빌드에는 참 익숙해 지지가 않더군요. 그래도 열심히 makefile 도 만들어 보고 command line 을 통한 빌드에 익숙해 지려고 노력하고 있습니다. 간단하게 아.. 2012. 10. 28. KMPlayer 깔 때 짜증나는 것들... 윈도우 동영상 플레이어로 KM player를 많이들 사용하실 거라고 생각합니다. 웬만한 코덱들은 자체적으로 다 해결이 되고 단축키나 기능들도 잘 되어 있어서 동영상 보는데 거의 부족함이 없는 좋은 프로그램이라고 생각합니다. 아래 포스팅에서 소개한 몇 가지 요즘 나오는 동영상 형식들 빼면 말이죠. 2012/09/30 - [유틸] - 오픈 소스 미디어 플레이어 VLC media player KMPlayer 의 공식 홈페이지는 다음과 같습니다. 다운로드 받으실 분들은 아래 주소에서 다운로드 받으시면 됩니다. http://www.kmpmedia.net/ 그런데 이렇게 편리한 KMPlayer 도 좀 ... 안 좋은 점이 있습니다. 오픈 소스 프로그램이 아닌 이상 수익을 내야 하므로 보통 이런 프로그램들은 제휴를 .. 2012. 10. 21. 간단하게 동영상 codec 정보 알아보기 요즘은 스마트 폰이 일반화된 만큼 다양한 디바이스를 이용하여 이동중에 동영상을 청취하는 경우가 많은데요~ 아직도 디바이스마다 지원하지 않는 Codec 등이 있어서 따로 인코딩을 해야 하는 경우가 종종 발생합니다. 디바이스에서 보고자 하는 동영상이 어떤 Codec 을 사용하고 있는지 확인을 하려면 FFmpeg 같은 Command Line 프로그램을 사용해도 되지만 간단하게 알아보고자 할 때는 아무래도~ GUI 기반의 프로그램이 편리하죠~ 저는 이런 경우 아래 포스팅에서 소개했던 VLC 플레이어를 사용합니다. 2012/09/30 - [유틸] - 오픈 소스 미디어 플레이어 VLC media player Codec 을 알기를 원하는 동영상 파일을 VLC 플레이어에서 재생하시고~ Ctrl+J 를 누르시거나 도구 .. 2012. 10. 14. CodeBlock 에서 FFTW 라이브러리를 사용한 FFT 실습 FFT (Fast Fourier transform)는 이산 푸리에 변환(Discrete Fourier transform, DFT) 를 빠르게 하기 위한 알고리즘으로 요즘 세상에 알게 모르게 굉장히 많이 사용되고 있습니다. 그 응용이라고 하면 너무나 광범위 하죠~ 우리가 거의 매일 사용하는 MP3 음악 파일은 DCT(discrete cosine transform) 를 이용한 손실 압축 방식인데 여기도 FFT 가 응용되고~ 요즘 한창 많이들 사용하고 있는 통신 방식인 LTE(Long Term Evolution)나 Wibro 등은 Orthogonal frequency-division multiplexing (OFDM)이라는 기술을 근간으로 하는데~ 이 OFDM 이라는 기술도 FFT 를 통해 구현 됩니다. WI.. 2012. 8. 26. C++11 많이 좋아졌네요. C/C++ 프로그래밍에 대한 기존의 제 선입견은 코드량이 많다 입니다. 실행 속도가 다른 언어들 보다 훨씬 빠르지만~ 하나하나 짜려면 그 라인 수가 너무 많아서 생산성이 그리 좋지 못하다는 선입견이죠. 그런데 요즘 C++ 의 변화를 보고 있으면 그 변화가 눈부시다는 생각이 들더군요. C++ 코딩을 하면서 종종 참조하는 사이트인데~ 들어가면 각종 라이브러리나 함수에 대한 정의 및 예제, C++ Tutorial, C++ 역사 등등 C++ 과 관련한 정말 다양한 정보를 얻을 수 있는 사이트 입니다. http://www.cplusplus.com 그런데 위 사이트에서 돌아다니다 보면 C++11 이라는 것들이 눈에 띄더군요. 뭔가 해서 보니 2011 년 9월에 만들어진 C++ 표준이라서 C++11 이라고 한다네요... 2012. 8. 26. deque 이용 Memory shift 실험 지난 포스팅에서 memmove() 함수를 이용한 memory shift 실험을 수행했었는데~ 2012/08/06 - [컴퓨터일반] - C/C++ memmove() 함수 속도 실험 memmove() 함수의 속도가 for 문을 이용했을 경우에 비해 그리 빠르지 않은 것을 확인했었습니다. 그래서 계속 찾다 보니 C++ STL 에 deque 가 있더군요. 디지털 필터 설계시의 memory shift 는 이전 신호는 없애고 현재의 신호가 끝에 들어가는 동작이 반복되기 때문에 C++ STL 의 deque 가 적격이라고 생각되는군요. 그래서 얼마나 빠른지 다시 한번 실험을 해봤습니다. 본 실험은 컴퓨터 성능에 따라 다르겠지만 for 문, memmove(), deque 사용에 따른 상대적인 속도 차이를 비교하기 위한 .. 2012. 8. 15. 자바 환경변수 설정 지난 포스팅에서 프로그램의 인기도에 대해 소개했었는데요 2011/03/07 - [컴퓨터일반] - Programming language 인기도 최근에 살펴보니 아래 그림처럼 자바의 인기는 요즘도 여전 하더군요. 인기 있는 언어를 꼭 알아야 하는 것은 아니지만~ 여러 사람들이 많이 사용한다는 것은 그만큼 좋은 점이나 쓰임이 있다는 거니깐~~ 한번쯤 공부해 보는 것도 나쁘지 않다고 생각해서 조금씩이라고 공부 중입니다. 아래 주소에서 자바 설치 파일을 다운로드 받을 수 있습니다. http://www.oracle.com/technetwork/java/index.html 위 주소에서 원하는 버전을 다운로드 받고~ 설치과정은 다음~ 다음~ 아시죠~ 그런데 자바 설치를 위해서는 환경 변수 등록을 해줘야 하더군요. 전 .. 2012. 8. 11. C/C++ memmove() 함수 속도 실험 이전 포스팅에서 memcpy() 함수와 for 문을 이용한 메모리 복사의 속도 실험을 해 본적이 있었는데요. 2012/07/16 - [컴퓨터일반] - C/C++ memcpy() 함수 속도 오늘은 그 연장선으로 memmove() 함수의 속도 실험을 수행해 봤습니다. memcpy() 함수는 인자로 들어가는 두 메모리가 다른 주소여야 하지만 다음과 같은 정의의 memmove() 함수는 source 와 destination 이 같은 주소여도 상관이 없는 것으로 알고 있습니다. void * memmove ( void * destination, const void * source, size_t num ); 즉 memmove() 함수는 소스가 겹쳐지는 부분에 대해 내부적으로 고려를 해주는 뭔가가 더 들어간다는 거죠... 2012. 8. 6. Codeblock 에서 DLL 사용하기 윈도우에서 C/C++ 코딩을 할 때는 보통 Visual studio 를 사용하곤 합니다. 지난 포스팅에서도 말씀 드렸다시피 요즘은 Visual C++ 같은 경우에는 공짜로 사용 가능 하더군요. 2012/06/03 - [컴퓨터일반] - Visual studio 에서 math.h 정의시 상수 사용 방법 그런데 Visual C++ 은 타 운영체제에서 지원을 안 하므로 타 운영체제도 고려 한다면 Cross platform 컴파일러를 이용하는 것이 좋다고 생각돼서~~ 윈도우에서도 gcc 를 사용하곤 합니다. 윈도우에서 gcc를 사용하는 방법은 세 가지 정도 되는 것 같습니다. Cygwin, MinGW 등을 사용하거나 아니면 버츄얼 박스 등으로 윈도 내에 리눅스 깔아서 사용하는 방법 등이 있는 것 같은데. MinG.. 2012. 7. 31. C/C++ memcpy() 함수 속도 C/C++ 에서 메모리 복사를 위해서 사용하는 함수로 memcpy() 함수가 있습니다. for 나 while 과 같은 루프를 이용해서 메모리를 복사 할 수 도 있지만, memcpy() 함수를 이용하는 것이 속도 면에서 월등히 빠르다고 하더군요. 그래서 오늘 포스팅에서는 memcpy() 와 루프 문을 이용한 메모리 복사의 속도 비교를 해 보려 합니다. memcpy() 함수는 string.h 에 정의 되어 있고 그 원형은 다음과 같습니다. void * memcpy ( void * destination, const void * source, size_t num ); source 에서 destination 으로 num 만큼을 복사 하는 간단한 형태입니다. 비교를 위해서 배열의 크기에 따른 시뮬레이션을 수행해 봤.. 2012. 7. 16. C/C++ 동적 할당 배열 인덱스 1부터 시작하기 MATLAB 을 사용해본 분들은 아시겠지만, MATLAB 의 배열 인덱스는 1부터 시작 합니다. 그런데 C 나 그 밖의 컴퓨터 언어들의 배열 인덱스는 보통 0에서부터 시작을 하죠. 모듈로 같은 연산을 할 때는 0 부터 시작하는게 편하지만 그 밖의 몇가지 수학적인 연산에 이용되는 배열의 경우 1 에서부터 시작하는 게 편리 할 때도 있는데요. 이런 경우에 C/C++ 에서 동적 할당을 이용하여 배열을 만드는 방법에 대해 설명 드리려 합니다. 지난 포스팅에서 다차원 배열을 할당 할 때 calloc() 을 사용하여 배열을 할당했는데요. 2011/10/05 - [컴퓨터일반] - C 언어 이차원 동적 배열 다음과 같이 할당한 포인터에 -1 만큼 옵셋을 주면 배열의 인덱스를 1부터 n 까지로 이용 할 수 있습니다. i.. 2012. 6. 21. Perl YouTube download 글을 시작하기 전에, 본 포스팅에 포함된 코드는 아래 주소의 내용을 참조하였음을 밝힙니다. http://advent.perl.kr/2011/2011-12-09.html 유투브에서 동영상을 보다 보면 끊기는 경우가 종종 있어서 다운로드 받아서 안 끊기게 보고 싶다는 생각을 하는데요. 위 주소에서 Perl 을 이용하여 유투브에 있는 동영상을 다운로드 하는 방법에 대한 설명이 자세히 나와 있습니다. 역시 Perl 은 참 재주 많은 놈이더군요. 그런데 위 주소의 코드를 그대로 실행 시키면 다음과 같이 잘 구분이 안 되는 파일명으로 동영상이 다운로드 됩니다. EX) EaEkTHNNL_o.mp4 그래서 파일명을 그나마 알아보기 쉽게 저장하도록 코드를 추가 하였습니다. 본 코드를 실행하기 위해서는 위 주소에 기재된 .. 2012. 6. 17. GoldWave command line 명령 이용하기 Goldwave 와 같은 신호처리 프로그램으로 음성 파일을 변환할 때 일괄적인 설정을 하고 싶다면 지난 포스팅에 말씀 드린 batch processing 을 이용하는 게 좋습니다. 2012/04/23 - [유틸] - Goldwave 로 mp3 를 wav 파일로 만들기 그런데 이런 일들이 시간이 좀 지나서 매번 해야 한다면 일일이 프로그램 열어서 batch processing 을 돌리는 것도 귀찮은 일이죠. 이렇게 계속해서 반복되는 작업이 있다면 command line 명령을 이용하는 것이 좋습니다. C:\music 에 들어있는 mp3 파일을 sample rate = 22050 Hz 의 Wave 파일로 변환하고 변환된 파일을 C:\wav 파일에 저장하는 일을 매번 한다고 해 보죠. GoldWave 프로그램.. 2012. 6. 5. Visual studio 에서 math.h 정의시 상수 사용 방법 C++ 코딩을 하다 보면 참~~ 헷갈릴 때가 많이 있습니다. 윈도우에서는 보통 visual studio 를 쓰는데 ~ Visual studio 를 이용할때와 gcc 를 사용할 때 같은 코드인데도 어디선 돌아가고 어디선 안 돌아가고 하는 게 너무 짜증 나더군요. Visual studio 가 없으신 분들은 아래 블로그글 참조하셔서 무료버전 다운로드 후 설치 하시면 됩니다. http://blog.chanywa.com/51 최근에 이런 경험은 math.h 헤더를 사용하면서 경험 했습니다. math.h 헤더에는 분명히 M_PI 라는 원주율 값이 정의되어 있습니다. 아래 주소 참조~ http://ko.wikipedia.org/wiki/Math.h gcc 에서는 다음과 같은 코드가 잘만 돌아갑니다. 당연히~~ 이런 .. 2012. 6. 3. 안드로이드에서 팟캐스트 듣기 나꼼수 덕분에 저한테는 너무나 생소한 팟캐스트에 대해 알게 됐습니다. 저도 요즘 팟캐스트 즐겨 듣는데요~ 오늘은 안드로이드에서 팟캐스트를 이용할 수 있게 해주는 어플인 RssDemon에 대해 소개 드리려 합니다. RssDemon 은 공짜인데다가 사용방법도 간단해서 너무 편리하게 이용하고 있습니다. Play 스토어에서 rssdemon 으로 어플을 검색하면 유료도 나오고 무료도 나오는데요~ 아래 처럼 무료 항목인 RssDemon 뉴스 & 팟캐스트 리더를 선택합니다. 팟캐스트를 추가하기 위해서는 설치 후에 다음과 같이 + 기호를 눌러 주시구요~ 아래 예처럼 팟캐스트 피드 url 을 적어 줍니다. 제목이나 유저이름 그 아래에 비밀 번호 등은 맘대로 설정해도 됩니다. 그리고 마지막으로 저장을 눌러 줍니다. 그럼 .. 2012. 4. 4. 컴퓨터 공인인증서 폴더 위치 2013-01-31 추가 내용 아래 포스팅 내용은 윈도우 XP 에 대한 내용입니다. 윈도우 7 의 공인인증서 폴더 위치는 다음과 같습니다. C:\Users\Administrator\AppData\LocalLow\NPKI Administrator 부분은 컴퓨터의 사용자 계정에 따라 다를 수 있습니다. 어제 이모님이 저한테 컴퓨터의 공인인증서에 대해 물어보시더군요. USB 에 저장되어 있던 공인인증서를 바탕화면에 복사 했는데, 은행 홈페이지에 들어갔더니 공인 인증서 인식이 안된다고 어떻게 해야 되냐고 물으셨습니다. 이모님은 연세가 좀 있으신데. 요즘 한창 컴퓨터 공부를 하고 있습니다. 저희 나이 또래 친구들한테는 너무나 당연한 것들이 어른들한테는 익숙치 않은 것일 수도 있구나 라는 생각이 들었습니다. 이모는.. 2012. 3. 20. 포털의 계산기를 활용해 보세요. 요즘은 대부분의 프로그램들이 웹을 기반으로 해서 돌아간다는 인상을 많이 받습니다. 컴퓨터에서 간단한 계산을 하고 싶을 때 대부분 각 운영체제 내부의 계산기 기능들을 주로 사용하지만 요즘은 웹에서도 계산기를 이용할 수가 있습니다. 구글도 브라우저에서 계산기 기능을 제공 하지만~ 아시는 분들은 아시겠지만 모르시는 분들을 위해 토종 포털의 양대 산맥인 네이버와 다음의 계산기능에 대해 설명 드리겠습니다. 네이버 검색 창에 네이버 계산기, 다음 검색 창에는 다음 계산기라고 치면 각 포털의 계산기가 나옵니다. 간단하게 곱하기 연산을 수행해 보면 요렇게 나옵니다. 네이버 계산기에서는 위 그림처럼 일반계산, 공학계산, 퍼센트계산, 이자계산, 학점계산, 퇴직금계산, 비만도계산등과 같은 메뉴가 있고~~ 다음 계산기에서는 .. 2012. 3. 14. Windows 7 예약 작업에서 맘에 드는 점 컴퓨터를 좀 더 편리하게 사용하려면 반복되는 작업에 대하여 예약 작업을 지정해 놓고 이용하는 것이 좋다고 생각됩니다. 개인 사용자들의 컴퓨터 사용 실태를 보면 반복되는 부분들이 필연 적으로 존재 하게 되죠. 예를 들면 일주일에 한번씩 로또 당첨 번호를 확인 한다거나. 특정 시간에 드라마를 본다거나 하는 등 반복되는 부분들이 굉장히 많습니다. 컴퓨터는 반복에 굉장히 특화된 기계입니다. 사람처럼 잊어버리거나 할 염려도 적죠~ Windows 7을 쓰면서 다양한 부분에서 향상된 기능들을 발견하게 되는데. 예약작업에 있어서도 향상된 부분이 눈에 띄네요. 서버와 다르게 데스크톱 사용자들은 보통 컴퓨터를 계속 켜 놓거나 하지 않습니다. 이런 환경에서 윈도우 예약 작업의 트리거를 특정 시간으로 했을 때 ~~~ 트리거 .. 2012. 3. 12. C/C++ argc, argv 의 사용법 C / C++ 의 함수 사용시 Argument 를 적절히 사용하는 것은 너무나 당연합니다. 그런데 저는 C/C++ 코딩을 한지는 한 5년이 넘은 것 같은데 main 함수의 Argument는 제대로 사용을 하지 않았다는 것을 최근에 책을 보다 알았습니다. 어떻게 보면 너무 기본적인 부분이라 그냥 아무 생각 없이 넘어 가곤 했던 것 같습니다. main 함수의 정의는 보통 다음과 같이 합니다. int main(int argc, char **argv) { return 0; } 위 코드에서 argc 는 argument의 수를 의미 합니다. argv 는 argument 가 char 형으로 저장이 되는 변수 입니다. argv[0] 은 실행 파일명이 저장 됩니다. argv[1], argv[2] … 에는 순서대로 사용자.. 2012. 2. 16. 프로그램 다운로드는 지정된 장소에서 …… 제발!! 얼마 전 한 지인이 전화가 와서 끝에 HWP 라고 써져 있는 파일이 클릭했는데 열리지가 않는다고 어떻게 해야 하냐고 하더군요. HWP 확장자 파일은 한글 문서 파일이니깐 한글 뷰어를 깔라고 말씀 드렸고 지인 분은 알겠다면서 전화를 끊으셨습니다. 그런데 몇 분 있다가 한글 뷰어를 깔았는데…… 보려던 HWP 파일도 안 열리고 컴터가 완전 맛탱이가 갔다고 하더군요. ㅡㅡ; 그럴 리가 없는데…… 왜 그러지…… 난 한번도 그런 적 없는데…… 하는 생각으로 지인을 찾아 갔습니다. 컴터를 확인해보니 익스플로러에 뭔 이상한 툴바부터 비롯해서 오만 가지 잡다한 쓰레기 백신 프로그램 등등이 막 깔려 있더군요. 네이버 백신으로 바이러스 검사를 하니 바이러스도 검색이 되고요. 그 지인은 제가 말한 데로 한글 뷰어를 깔았는데 .. 2012. 2. 16. C99 header complex.h 예전에 C 코딩을 처음 할 때 complex 연산을 어떻게 해야 하나 고민을 많이 했었던 기억이 납니다. C89 시절에 C 코딩을 배우던 터라 아래 주소의 문서에서 확인 할 수 있는 바와 같이 http://rosettacode.org/wiki/Arithmetic/Complex#C typedef 을 이용해서 Complex 형을 만들고, complex 연산 하나하나를 함수로 만들어서 이용했던 기억이 나네요. 이런 complex 라이브러리야 각자 한번만 만들어 놓으면 두고 두고 쓸 수 있을 테니깐~~ 이렇게 손수 타입을 작성하는 것이 그리 문제는 안됩니다. 그런데 최근에 또 다른 C 책을 좀 읽다 보니 C99 에서 complex.h 가 정의 되었더군요. 물론 컴파일러 마다 complex.h를 정상적으로 지원하.. 2012. 2. 15. ACER 노트북 XP 설치 시 BIOS 세팅 ACER 노트북 설치 시 XP 를 깔려는 데 아래와 같은 블루 스크린이 뜨더군요. 윈도우 7을 깔 때 는 잘 됐었는데 이상하게 XP 를 깔 때는 블루스크린이 떠서 너무 당황 했었습니다. 해결 방법은 BIOS 에 있었습니다. 아래 그림처럼 ACER 노트북 시작 시 를 누르고 BIOS 세팅에 들어가서 2번째 탭인 Main 에서 SATA Mode 부분을 IDE Mode 로 변경해 줍니다. Default 는 AHCI Mode 로 되어 있었습니다. 을 눌러서 설정을 저장한 후에 나오고 XP 를 깔면 더 이상 블루 스크린이 안 뜨고 정상적으로 설치가 됩니다. 2012. 1. 30. Linux 설치 USB 만들기, UNetbootin 요즘은 점점 CD 나DVD 같은 소모성 저장장치의 이용이 사라지는 추세입니다. 윈도우, 리눅스와 같은 OS 설치를 위해 한번 쓰면 다시 작성이 불가능한 CD 로 구울 필요가 없이 USB 를 이용하여 OS 를 설치 할 수가 있게 돼서 정말 편리하더군요. 또 이렇게 만들어진 USB 는 다른 데이터 저장을 위해 재 사용도 가능하므로 환경적으로도 바람직 하다고 생각되네요. CD 나 DVD 도 결국에는 플로피 디스크와 같은 전철을 밟게 될 거라 생각되네요. 오늘 소개해 드릴 Linux 용 설치 USB 만드는 툴은 UNetbootin 입니다. 굉장히 다양한 리눅스 배포판에 대해 간단한 클릭 몇 번으로 설치 USB 를 만들 수 있습니다. 공식 홈페이지 주소는 아래와 같습니다. http://unetbootin.sour.. 2012. 1. 29. 이전 1 2 3 4 5 6 다음