본문 바로가기

분류 전체보기

(334)
[C언어]제곱을 구하는 pow함수! 음수의 제곱도 구할 수 있을까? 안녕하세요. pow함수가 음수제곱도 지원하는 줄 알고 프로그래밍하다가 4시간을 날려먹은 한노입니다. 그말 그대로 pow함수는 음수의 제곱을 구할 수 없습니다! pow함수의 지수값에 음수를 넣으면 0을 리턴하게 되죠. 하지만 조금만 생각해보면 pow함수로 음수의 제곱을 계산할 수 있게되죠. 2의 제곱 - 2 4 8 16 2의 음의제곱 - 1/2 1/4 1/8 1/16 보면 감이 오시나요? 1을 어떤 수의 제곱으로 나누면, 그 어떤 수의 음의 제곱값을 알 수 있습니다! 그럼 이를 프로그램으로 구현해보겠습니다. if(지수값>=0)1*pow(2,지수값); else 1/pow(2,fabs(지수값)); 참 쉽죠? 참고로 fabs는 수의 절대값을 구하는 함수입니다! 위 예제에서는 지수값의 절대값을 구해 pow함수가 ..
[C언어]부동소수점으로 저장된 데이터를 정수형으로 바꾸기 안녕하세요. 세상에는 다양한 장비가 있고 그 장비중에서는 메모리안에 데이터가 부동소수점형태로 저장되어있어서, 이것을 읽기 위해서 정수형의 형태로 데이터를 변환해줘야 할 때가 있어요. 이번에는 그에 대한 프로그램을 작성해볼게요. 참고로 여기서 사용하는 부동소수점은 IEEE754(https://ko.wikipedia.org/wiki/IEEE_754)를 참조했어요 출력 데이터가 16비트일 경우(혹은 상위16비트만 읽은 경우) #define DECIMAL 100 //소수점 2자리까지 보기 위해 결과값에 100을 곱해주고 소수점을 자름 #define BIAS 127 //지수에 더해주는 값(IEEE754) out = 메모리에서 읽어온 데이터 값 outSign= *out & 0b1000000000000000 ? -1..
[C언어]CMD Printf 고급 스킬! (c언어 커서 위치 바꾸기) 안녕하세요. 두부입니다. 제목을 뭘로 지을지 몰라서 저렇게 지었는데.. 무슨말인지 모르시겠죠 ㅜ 저도 잘 표현하기가 힘드네요. 제가 프로그래밍을 하다가, printf문으로 폼을 미리 출력하고 커서 위치를 자유자재로 지정하여 문자를 입/출력하는 프로그램을 만들고 싶었습니다. 그래서 만들었습니다. 일단 완성 사진부터 보여드리겠습니다. 일단 틀을 먼저 출력한 후, scanf문을 이용하여 ( ) 괄호안에 문자를 입력받는 프로그램입니다. 즉, 원래 1,2,3 이 있던 자리는 빈칸이고, 위 괄호 안부터 순서대로 커서가 깜박거리며 문자를 입력하라고 사용자에게 알려주는 프로그램입니다. 그럼 코드를 보겠습니다. #include "stdafx.h" #include #include #include #pragma warnin..
[C언어]INI파일 사용하기 (GetPrivateProfileString) *INI파일에 대한 자세한 내용은 나무위키에 검색해주세요 원형: DWORD WINAPI GetPrivateProfileString o _in_ LPCTSTR lpAppName, //Section의 이름 _in_ LPCTSTR lpKeyName, //Key의 이름 _in_ LPCTSTR lpDefault, //읽기에 실패할 경우 버퍼에 들어갈 디폴트 데이터 _out_ LPCTSTR lpReturendString, //읽은 내용이 들어갈 버퍼 _in_ LPCTSTR nSize, //읽기 버퍼의 사이즈 _in_ LPCTSTR lpFileName, //INI파일이 위치하는 경로 예:(SectionA, Bvalue, "-1", Csave, 255, ./Dinifile.ini) -> Dinifile.ini파일의 S..
[C언어]C언어 시리얼통신 - CreatFile (RS232, RS485 등) 1.CreateFile 파일 또는 I/O장치를 만들거나 여는 함수입니다. 일반적으로 사용되는 I/O장치는 파일, 파일스트림, 디렉터리, 실제 디스크, 볼륨, 콘솔 버퍼, 테이프 드라이브, 통신 리소스, 메일 슬롯 및 파이프입니다. 저는 CreateFile함수를 이용하여 시리얼통신을 위한 COM Port를 사용했으며, 제가 아는만큼 설명할수밖에 없으니 이 글에서 이 함수는 시리얼통신을 위하는게 주 목적으로 사용할 것 입니다. 이 함수는 파일이나 장치들의 핸들을 반환하며, 핸들을 통해 장치를 액세스하는 데 사용할 수 있습니다. 문법 WINAPI CreateFile( LPCTSTR lpFilename, DWORD dwDesiredAccess, DWORD dwShareMode, LPSECURITY_ATTRIBU..
[C언어]멀티쓰레드 기반의 서버구현 쓰레드란? -경량화된 프로세스. 동시실행이 가능하며 프로세스의 단점을 극복하기 위해 등장. -스택을 제외한 나머지 메모리 공간을 공유 -보다 간단한 context switching -일부메모리를 공유하므로 스레드간 통신이 편리 thread관련 헤더파일은 int pthread_create( //쓰레드 생성 함수 pthread_t *thread, // 생성된 쓰레드의 ID를 저장할 변수의 포인터를 인자로 전달 pthread_attr-t *attr, //생성하고자 하는 쓰레드의 특성(attribute)를 설정할때 사용. 일반적으로 Null을 전달 void *(*start_routine) (void*), //리턴타입과 인자가 void*인 함수를 가르키는 포인터 void *arg //쓰레드에 의해 호출되는 함수에..
[구글링]ppt 검색하기, 특정 사이트 검색 ( site ) 특정 사이트에서만 검색하고싶은경우! 하지만 그 사이트 전체적인 검색창이 없는경우! 이럴 때는 어떻게 해야 할까요? 바로 구글 검색 연산자를 이용해야죠! 그럼 youtube에서만 '두부'를 검색한다고 생각하고 특정 사이트에서만 검색하는 'site'연산자를 사용하는 것을 보여드리겠습니다! ~~~ ~ 먼저 그냥 '두부'를 검색한 경우! 맨위에는 나무위키에서 두부의 검색결과를 보여주고 똑똑한 구글이 현재 제가 있는 안양시근처의 두부집을 광고해주네요. 나무위키에서도 검색결과가 나오고 다른 사이트에서 검색결과가나오고 이런 저런 사이트의 검색결과가 나오는 것을 확인할 수 있습니다. ~ ~ 그럼 site연산자를 사용해서 youtube에서만 검색한경우! 위 결과처럼 youtube에서만 검색되는 것을 보실 수 있습니다! ..
[구글링]ppt 검색하기, 특정 파일형식 검색하기 ( filetype ) 오랜만에 실용성 엄청 높은 연산자를 가져왔습니다. 그것은 바로, 특정 파일 형식만 검색하는 연산자인 'filetype' 입니다! 구글 검색하면서, 교육용같이 정리된 파일을 찾을 때, 주로 ppt로 찾으면 쉽게 검색이 가능한데, 이럴 때 꼭 필요한 연산자이겠죠? 제 기준으로 지금까지 올린 글 중 ""연산자 다음으로 실용성이 높은 연산자입니다! 그럼 바로 감자에대한 교육자료를 찾는다고 가정하고, 파일형식이 ppt인 감자와 관련된 파일을 검색해보겠습니다! ~~~ ~ 먼저 그냥 '감자'를 검색한 경우! 감자에 대한 일반적인 검색결과가 나와서 우리가 원하는 감자에 대한 교육정보를 얻으려면 엄청난 자료수집과 정리가 필요할 것 같습니다! 생각만 해도 머리아프죠? 이럴때 감자에 대한 ppt자료만 따로 분류해서 검색하면..