본문 바로가기

프로그래밍/C/C++

C 표준 라이브러리 함수 출처 ; http://blog.naver.com/kkwwhh7/100003308350 1. 데이터 변환 함수 2. 디렉토리 조작 함수 3. 버퍼 조작 함수 4. 파일 조작 함수 5. stream 입출력 함수 6. Low level 입출력 함수 7. Mathematics 8. 메모리 조작 함수 9. 탐색과 정렬 함수 10. 문자열 조작 함수 11. 시간 함수 12. 문자 분류 및 변환 함수 13. 기타 함수 1. 데이터 변환 함수 문자나 문자열을 수치 값으로 변환시키거나 대문자를 소문자로 소문자를 대문자로 변환하는 함수로 stdlib.h에 정의되어 있다. 헤더 파일 : #include atof 형식 : double atof(char *string) 설명 : 문자열을 부동소수점 값으로 변환하는 함수 부동소수.. 더보기
C언어 구조 % 정말 예~~~ 전에 많이 보던 화면 ㅋㅋㅋ% C 는 main() 함수를 기본으로 한다. main()함수안에 {}로 시작과 끝을 구분한다. [기본구조] /* 주석문*/ #include /* standard in out header file include. 선행처리기. main() { 함수처리 } 이런 형식의 구조를 가지고 수행되어진다. [C언어 기본] *대소문자 구분을 한다. *main()함수가 꼭 필요하다. 없으면 않되.... * 함수는 꼭 {}로 묶어서 구분 * ; 로 문장의 끝을 맺는다. * 주석은 /* */로 묶음. 소스파일 : *.c 오브젝트파일 : *.obj 실행파일 : *.exe [C언어특징] /* 알려진특징들... * 이식성 양호 * 인터페이스용이 * H/W 제어 용이 # 다른건 몰라도 .. 더보기
공용체,union type 다른 자료형이 같은 하나의 기억장소를 공유하며, 가장 큰 자료형 하나의 크기만큼 기억공간을 가지게 된다. 형식> union 공용체이름{ 자료형 필드명; ... }; union 공용체형이름 공용체이름; union 공용체형이름 공용체배열이름[수]; 공용체형이름 *공용체주소변수; //구조체와 동일하다... 예> void main() { union man{ int age; float weight; } union man hojin; 더보기
구조체,structures 구조체란 간단히 말해서 다른 자료형들의 모임.이다. 일종의 레코드. 구조체를 구성하는 것들을 멤버변수(필드field,아이템item)라고 한다. 형식> struct 구조체명{ 자료형 변수; ... } // 구조체 선언 ... struct 구조체명 변수; -> struct people{ int age; char name[10]; char addr[20]; char sex; ... } struct people busan; 이럴수도 있고, 선언후 바로 struct people{ int age; char name[10]; char addr[20]; char sex; ... } busan; 이럴수도 있다. 또한 typedef struct people{ // people 구조체 선언하고 int age; char na.. 더보기
storage class storage class 라는건 변수의 생성,소멸의 시기, 장소,위치를 결정하는 예약어이다. 보통 생략할 때가 많은데, 이런 경우에는 auto 라는 storage class 로 설정된것이다. 형식> storage class 자료형 변수명. -> auto float fsum; 종류> auto - 메모리에서 생성되며, 지역변수이다. 쓰레기값이 초기값으로 들어가며, 함수안에서만 선언가능. 그 함수에서만 사용가능하게 된다.즉 지역변수라는 얘기다. register - 레지스터에 생성되고, 역시 지역변수. static - 메모리에 생성되지만, 전역,지역이 가능하다. 초기화가 자동으로 되기때문에 신경쓰지 않아도 되고, 함수밖에서 선언하면 전역, 함수내에서 선언하면 지역변수가 된다. extern - 역시 메모리에서 생.. 더보기
포인터 C에서 가~~~장 중요한 개념중하나. 포인터 변수는 주소를 값으로 갖는 변수를 말하는데, * 을 이용해서 선언하게 된다. 즉, 주소값이 변수가 된다. 예> int *p; float *fp; ------------------------------------------------- #include main() { int a,num,*p; num=100; p=# a=*p; printf("num = %d, a = %d",num,a); } 이럴경우 p에는 num의 주소가 들어가게 되고, a에는 p주소에 해당하는 값, 즉 100이 들어가게 된다. ------------------------------------------------- #include main() { char *p; p = "HoonyG"; .. 더보기
배열 C에서는 배열은 1차원배열, 다차원배열이 있다. 구현은 간단하다. 자료형 이름[첨자] 형식이다. int a[10]; 이런형식을 이용해서 정의를 내리고 사용한다. 2차원배열을 구현할 경우 이름[행번][열번] 형식이 된다. 배열을 사용할때 포인터 이용을 같이 하는 경우가 많다. 배열 자체가 데이터를 연속적으로 저장하기 때문에 포인터를 이용한 접근이 쉬워진다. 배열명자체가 시작명을 가지는 포인터상수이기 때문이기도 하다. int a[10]; 일경우 a 가 100 번지에 저장된다면, int *pt_a; pt_a=a; 로 구현하면, pt_a = &a[10] 의 의미가 된다 더보기
조건.IF.SWITCH,FOR,WHILE --------------------------------------------------------------- IF(조건1) { } else if(조건2){ } else { } 예> #include #include main() { int a,b; char mode; puts("enter the type. E : easy, N : normal, I : insane") gets(mode); if(mode=='E') { puts("Easy mode started"); }else if(mode=='N'){ puts("Normal mode started"); }else if(mode=='I'){ puts("Insane mode started"); } getch(); } ----------------------.. 더보기
문자입출력 입력함수 gets() 문자열입력. 엔터키에 의해 입력. 공백가능 getch() 한개 문자입력. 바로입력. getche() 한개문자.바로입력.입력된내용나타남. getchar() 한개문자.엔터키입력. 출력함수 putchar() 한개문자출력. puts() 문자열출력.행이 자동으로 바뀜. 예> #include void main() { char name[20], telno[10]; puts("What's your name?); gets(name); puts("What's your telephone number?"); gets(telno); printf("%s 's telephone number is %s",name,telno); getch(); } 더보기
연산자들 C에서는 논리,관계,증감,산술연산자가 존재한다. 이는 말그대로 논리(참거짓을판별),관계(대소),산술(+-*/)증감(++--)을 한다. ---------------------------------- * 곱하기 / 나누기 + 더하기 - 빼기 % 나머지 ++ 증가1 -- 감소1 ---------------------------------- >>, 더보기
입력받아들이기~~ scanf() scanf() - 이넘은 데이터 형식에 따라서 값을 읽어들이는 함수이닷. 형식. scanf("변환문자...",인수..); ex> scanf("%d %f %c %s",&nint,&nfloat,&ctag,tags); 여기서 주요점은 하나의 문자는 &연산자를 이용하지만, 문자열같은 경우 &기호를 생략한다. 포인터라 생략가능. 문자열 마지막에는 null문자가 들어가게된다. 예> #include void main() { int a,b,sum; char name_a[10],name_b[10]; printf("input a's name?"); scanf("%s\n",name_a); printf("input b's name?"); scanf("%s\n",name_b); printf("input a's score?");.. 더보기
출력하라~~~!!!! printf() printf() 이넘은 C 에서의 표.준.입.출.력.함.수 이다. 이넘을 이용하기 위해서는 기본적으로 stdio.h 파일을 인클루드 시켜야 한다. 기본형식 printf("출력양식....",인수,...); 여기서 변환문자와 인수는 일대일대응되어야 함. 즉 인수의 자료형과 문자의 자료형이 일치해야함. %d : 10진수 %o : 8진수 %x : 16진수 %ld : long type 10진수 %lo : long type 8진수 %lx : long type 16진수 %u : unsigned 10진수 %c : one char 이외에 제어문자가 있는데, 이는 특정 출력을 나타낸다. \b : back. 한칸앞으로 \f : forward.한페이지이동 \n : new. 다음줄 처음 \r : 그줄 처음 \t : tab. 탭.. 더보기
변수~~ 그넘의 원수여. 프로그래밍에서의 가장~~~ 기초적인것이자 복잡한놈. 내가 원한는걸 만들어 줄수 있는 것. 남이만든걸 볼때... 4차원... 아니 10차원을 경험할수도 있는... 원인이 되는넘... !!!!!! 꼭 주석처리는 하자!!! 후임을 위해서... 나자신이 귀찮아 지지 않기위해서도...ㅋㅋ ------------------------------------------------------------ 변수는 말그대로 변하는 수!!! 지정된 값을 가지고 처리과정에서 변해서 결과값을 가지게 된다. 이데이터가 프로그램을 움직이게 한다. 가장 중요한건 naming~!!!. 누구라도 금방 알아볼수 있도록 쉽게지아야 함. * 대소문자 구분해서 * 예약어는 x * 첫번째 글자는 영문자 or _ 로 시작한다 * 변수명은 영문자,숫자.. 더보기
C언어 구조 % 정말 예~~~ 전에 많이 보던 화면 ㅋㅋㅋ% C 는 main() 함수를 기본으로 한다. main()함수안에 {}로 시작과 끝을 구분한다. [기본구조] /* 주석문*/ #include /* standard in out header file include. 선행처리기. main() { 함수처리 } 이런 형식의 구조를 가지고 수행되어진다. [C언어 기본] *대소문자 구분을 한다. *main()함수가 꼭 필요하다. 없으면 않되.... * 함수는 꼭 {}로 묶어서 구분 * ; 로 문장의 끝을 맺는다. * 주석은 /* */로 묶음. 소스파일 : *.c 오브젝트파일 : *.obj 실행파일 : *.exe [C언어특징] /* 알려진특징들... * 이식성 양호 * 인터페이스용이 * H/W 제어 용이 # 다른건 몰라도 .. 더보기
퀵소트 소스,Quick Sort source.참고 /*--------------------------------------------------------------------------*/ /* Purpose: qsort */ /*--------------------------------------------------------------------------*/ static void swapmem(char *a, char *b, size_t size) { register char t; register int i; for (i = 0; i < size; ++i,++b,++a) { t = *a; *a = *b; *b = t; } } /* qsort() 함수는 빠르게 정렬을 시킵니다. nmemb를 정렬시킬 위치를 나타냅니다. base는 정렬할 첫번째 요.. 더보기