본문 바로가기

dev14

C언어 상수 개념 써야지써야지 하다가 게을러서 이제서야 쓴다 ㅠㅠ 이번엔 프로그래밍에서 빠질 수 없는 상수에 대해 알아보자. 상수는 프로그램이 실행되는 동안 변하지 않는 값으로 수치상수, 문자열상수, 문자상수 등이 있다. 1.수치상수 계산에 이용되는 수치상수는 크게 고정소수점상수, 부동소수점상수로 분류된다. 고정소수점상수는 정수를 의미하고 8진, 10빈, 16진 정수로 분류된다. 부동소수점상수는 실수를 의미하고 지수표현과 소수점표현으로 분류된다. 정수의 소수점 위치는 항상 고정되어있고 실수의 소수점 위치는 고정되어 있지 않기 때문에 이런 용어가 붙어진 거다. #include int main() { /* 10진수 28을 %d(10진 정수) 형태로 출력한다. */ printf("%d\n", 28); /* 08진수 753를 %.. 2020. 6. 21.
입문자를 위한 C언어 기초 구조 프로그램을 처음접하는 사람도 기본구조를 파악하고 이해할 수 있도록 정리해보고 싶어서 쓰는 글이다. 우선, 프로그래밍을 위해 컴파일러가 포함된 프로그래밍 도구를 설치했다. https://0and.tistory.com/68 C언어 개발툴 Dev C++ 전공수업으로 C언어를 수강하면서 프로그램을 처음접하게 되었었다. 새내기 시절이라 수학, 과학만 하던 나에게 프로그램은 생소하였고 은퇴가 얼마안남은 교수님이였고 강의의 질도 좋지않아 0and.tistory.com 이제 가장 기본이 되는 c프로그램을 통해 전반적인 구조를 익혀보자. 프로그램의 가장 기초인 Hello World를 출력하는 프로그램을 예로 파악해보겠다. #include int main() { /* Hello World!를 출력해보자 */ printf(.. 2020. 5. 16.
C언어 개발툴 Dev C++ 전공수업으로 C언어를 수강하면서 프로그램을 처음접하게 되었었다. 새내기 시절이라 수학, 과학만 하던 나에게 프로그램은 생소하였고 강의의 질도 좋지않아서 이해하기 어려웠다. 다양한 개발언어가 많이 나왔지만 아직도 프로그래밍을 교육하는 대학이나 학원에서는 C언어를 커리큘럼에 넣고있기에 나처럼 어려움을 겪는 친구들을 위해 C언어 기초에 대해서 포스팅하려고한다. 기초 문법에 들어가기에 앞서 개발도구가 필요하다. visual studio를 많이 쓰지만, 무겁기도하고 설치과정이 번거롭기에.. Dev C++이라는 가벼운 개발도구를 설치하고 실행하는것부터 정리하자. 다운로드 방법은 간단하다. 1.우선 사이트에 접속하자. https://sourceforge.net/projects/orwelldevcpp/ Dev-C++ .. 2020. 5. 16.
C언어 sprintf printf 함수는 화면에 문자열을 출력할 수 있지만, sprintf 함수를 사용하면 출력할 문자열을 인자로 지정한 문자열에 저장한다. int sprintf (char *s, const char *template, ....) c언어는 문자열의 끝을 알리기위해 NULL 문자가 저장되는데 sprintf 함수는 배열에 저장된 문자 수를 리턴하고 자동적으로 맨 마지막에 NULL문자를 붙이기 때문에 항상 한 칸의 여유가 있어야한다. 따라서, 지정한 인자의 크기는 쓰여질 문자열의 크기 보다 커야한다. ex) #include #include int main() { char Buffer[30]; char t_date[8]; sprintf(t_date, "%s", "20200425"); printf("%s\n", t_d.. 2020. 4. 25.
C언어 memset bzero 비교 유지보수를 하다보면 bzero로 초기화 되어있을때와 memset으로 초기화 되어있을때를 자주보게된다. 두 함수에 무슨 차이가 있길래 혼합되어 쓰였을까? 엄밀히 말하자면 bzero는 비표준이므로 사용하지 않는것을 권장하지만 구시대의 많은 개발자들이 bzero를 사용한 것으로 관찰된다. void bzero (void *block, size_t size) - byte 스트링을 size만큼 0으로 채운다. - memset과 마찬가지로 메모리를 초기화하기위한 목적으로 주로 사용되었다. - BSD계열 UNIX에서 만들어진 함수로써.. memset의 비효율적인 대안이다. - 저장할 수 있는 유일한 값은 0이므로 memset만큼 일반적이지 않다. void * memset (void *block, int value, s.. 2020. 4. 22.
[JAVA] 로또 코딩 최근에 JAVA를 리마인드 할 겸 다시 공부를 하였지만 포스팅과 함께하는 것은 힘이든다... 포스팅은 나중에 하는것으로 하고 이번 포스팅은 JAVA 로또 프로그램이다. 자동으로 하는것보단 뭔가 나만의 알고리즘으로 프로그램을 짜서 그 번호로 찍는게 재미있겠다는 생각으로 로또 코딩을 아주 간단하게 해보았다. https://www.dhlottery.co.kr/gameResult.do?method=statByNumber 로또6/45 당첨통계 - 번호별 통계 * 로또6/45의 당첨번호는 (주)동행복권 공식홈페이지, ARS전화 등을 통해 확인하실 수 있습니다. www.dhlottery.co.kr 로또 사이트를 들어가면 이렇게 다양한 통계를 제공해주는데 난 여기서 번호별로 당첨된 횟수를 상, 중, 하 세 그룹으로 나.. 2020. 2. 2.