Computer >> 컴퓨터 >  >> 프로그래밍 >> C 프로그래밍

C 프로그래밍

  1. C 언어 scanf()와 fscanf() 함수 완벽 가이드 – 문법, 예제, 차이점

    scanf() 함수란? C 언어에서 scanf() 함수는 stdin(표준 입력)으로부터 형식화된 입력을 읽어 들이는 데 사용됩니다. 이 함수는 성공적으로 읽어 들인 항목의 개수를 반환하며, 입력 처리에 실패하면 음수 값(EOF)을 반환합니다. C 언어에서 scanf() 함수의 기본 문법은 다음과 같습니다. int scanf(const char *characters_set) 다음은 C 언어에서 scanf() 함수를 사용하는 예제입니다. 예제 코드 #include <stdio.h> int main () {  &nb

  2. C 언어 strpbrk() 함수 완벽 정리 – 문자열 검색 원리와 예제

    C 언어의 strpbrk() 함수는 첫 번째 문자열을 처음부터 순서대로 검사하면서, 두 번째 문자열에 포함된 문자 중 하나라도 일치하는 첫 번째 문자를 찾아내는 함수입니다. 검색 결과에 따라 반환값이 달라집니다. 일치하는 문자가 있는 경우: 첫 번째 문자열에서 일치한 문자의 위치(포인터)를 반환합니다. 일치하는 문자가 없는 경우: NULL을 반환합니다. 함수 구문 strpbrk() 함수의 기본 구문은 다음과 같습니다. 이 함수는 <string.h> 헤더 파일에 선언되어 있습니다. char *strpbrk(const

  3. C/C++ strcoll() 함수 완벽 가이드: 로케일 기반 문자열 비교

    strcoll() 함수란?C 언어의 strcoll() 함수는 시스템의 로케일(locale) 설정에 따른 정렬 순서(collating sequence)를 기준으로 두 개의 문자열을 비교하는 함수입니다. 일반적인 strcmp()가 문자의 바이트 값을 단순 비교하는 것과 달리, strcoll()은 각 언어·지역 환경에서 정의된 문자 정렬 규칙을 적용한다는 점이 특징입니다.반환값strcoll() 함수는 비교 결과에 따라 다음과 같은 정수 값을 반환합니다.0 — 두 문자열이 동일한 경우0보다 큰 값 — 첫 번째 문자열이 두 번째 문자열보다

  4. C 언어 strspn() 함수 완벽 가이드: 구문과 예제

    C 언어 strspn() 함수란?strspn() 함수는 C 언어의 <string.h> 헤더 파일에 정의된 표준 라이브러리 함수입니다. 이 함수는 첫 번째 문자열의 시작부터 두 번째 문자열에 포함된 문자들로만 연속해서 이루어진 초기 부분 문자열(segment)의 길이를 계산하고, 그 길이를 반환합니다.쉽게 말해, 첫 번째 문자열을 처음부터 차례대로 검사하면서 두 번째 문자열에 존재하는 문자가 연속으로 나타나는 만큼의 길이를 세는 방식입니다. 두 번째 문자열에 없는 문자를 만나는 즉시 검사가 중단됩니다.strspn() 함수

  5. C 언어 ispunct() 함수 완벽 정리 – 구두점 검사 방법과 예제

    ispunct() 함수란? C 언어의 ispunct() 함수는 전달된 문자가 구두점(punctuation, 문장 부호)인지 여부를 검사하는 함수입니다. 문자가 구두점이 아니면 0을 반환하고, 구두점이면 0이 아닌 값을 반환합니다. 여기서 말하는 구두점에는 마침표(.), 쉼표(,), 느낌표(!), 물음표(?), 세미콜론(;) 등 알파벳, 숫자, 공백을 제외한 인쇄 가능한 특수 문자들이 포함됩니다. 문법 ispunct() 함수의 기본 문법은 다음과 같습니다. int ispunct(int character); character: 검사할

  6. C 언어에서 fflush(stdin) 함수 사용법 완벽 정리

    C 언어의 fflush() 함수는 스트림에 연결된 버퍼를 비우는(flush) 역할을 합니다. 함수 호출이 성공하면 0을 반환하고, 실패할 경우 EOF를 반환하며 feof 오류 표시자가 설정됩니다.fflush() 함수의 문법fflush 함수의 기본적인 문법은 다음과 같습니다.int fflush(FILE *stream);매개변수로 버퍼를 비우고 싶은 스트림의 포인터를 전달하며, 여기에 stdin을 넘기면 표준 입력 스트림에 대해 fflush를 호출하게 됩니다.fflush(stdin) 예제 코드다음은 C 언어에서 fflush(stdin)

  7. C 언어 strdup()과 strndup() 함수 완벽 정리: 문자열 복제의 모든 것

    strdup() 함수란? strdup() 함수는 문자열을 복제(duplicate)하기 위해 사용되는 C 표준 라이브러리 함수입니다. 이 함수는 인자로 전달된 문자열을 새로운 메모리 공간에 복사한 후, 널 종료(null-terminated) 바이트 문자열을 가리키는 포인터를 반환합니다. 내부적으로 malloc()을 호출해 새 문자열을 저장할 메모리를 동적으로 할당하기 때문에, 사용이 끝난 후에는 반드시 free() 함수로 메모리를 해제해야 메모리 누수를 방지할 수 있습니다. strdup()의 구문 C 언어에서 strdup() 함수의

  8. C 언어 rand()와 srand() 함수 완벽 가이드 – 난수 생성 기초

    개요C 언어에서 난수(random number)를 생성할 때 사용하는 대표적인 함수가 바로 rand()와 srand()입니다. 두 함수 모두 <stdlib.h> 헤더 파일에 선언되어 있으며, 프로그램 내에서 무작위 값을 필요로 할 때 활용됩니다.rand() 함수란?rand() 함수는 의사 난수(pseudo random number)를 생성하는 함수입니다. 반환값은 정수형이며, 그 범위는 0부터 RAND_MAX(일반적으로 32767)까지입니다.C 언어에서 rand()의 문법은 다음과 같습니다.int rand(void);ra

  9. C/C++ isgreater() 함수란? 사용법과 예제 총정리

    isgreater() 함수는 첫 번째 인수가 두 번째 인수보다 큰지 여부를 판별하는 데 사용되는 수학 함수입니다. C 언어에서는 math.h 헤더 파일에 선언되어 있으며, 비교 조건이 성립하면 true를, 그렇지 않으면 false를 반환합니다.일반적인 비교 연산자(>)와 달리, isgreater() 함수는 NaN(Not a Number) 같은 특수한 부동소수점 값이 포함된 경우에도 오류나 예외 없이 안전하게 비교를 수행할 수 있다는 장점이 있습니다.구문(Syntax)bool isgreater(value1, value2);각 매

  10. C/C++ modf() 함수 완벽 정리 – 실수를 정수부와 소수부로 분리하는 방법

    modf() 함수는 전달받은 실수(인자)를 정수부와 소수부로 분리하는 데 사용되는 수학 함수입니다. 이 함수는 수학 관련 연산을 위해 math.h 헤더 파일에 선언되어 있으며, 호출 결과로 전달된 인자의 소수부 값을 반환하고, 정수부는 포인터를 통해 별도로 저장됩니다. modf() 함수의 구문 C 언어에서 modf() 함수의 기본 구문은 다음과 같습니다. double modf(double value, double *integral_pointer); 각 매개변수의 의미는 다음과 같습니다. value − 정수부와 소수부로

  11. C/C++ 포인터 산술 연산 완벽 가이드

    포인터 산술(Pointer Arithmetic)이란? 포인터 산술은 C 언어에서 포인터 변수에 덧셈, 뺄셈, 증가, 감소와 같은 산술 연산을 수행하는 기법입니다. 포인터에 적용할 수 있는 산술 연산은 크게 네 가지로 정리할 수 있습니다. 덧셈 : pt + n 뺄셈 : pt - n 증가 : ++pt 또는 pt++ 감소 : --pt 또는 pt-- 주의할 점은 포인터 산술이 일반 정수 연산과는 다르게 동작한다는 것입니다. 포인터에 값을 더하거나 빼면, 그 값에 포인터가 가리키는 자료형의 크기가 곱해진 만큼 주소가 이동합니다. 예를 들

  12. C 언어 size_t 데이터 타입 완벽 가이드

    size_t는 C 언어에서 사용되는 부호 없는 정수형(unsigned integer) 데이터 타입입니다. 주로 메모리에 저장된 객체의 크기를 바이트 단위로 표현하며, sizeof 연산자의 반환 타입으로도 사용됩니다.size_t의 주요 특징객체의 크기를 바이트 단위로 나타냅니다.sizeof 연산자의 반환 타입입니다.배열 인덱싱 및 반복문에서의 카운팅에 적합합니다.부호 없는 타입이므로 절대 음수가 될 수 없습니다.strlen, strcspn 같은 표준 라이브러리 함수의 반환 타입이기도 합니다.size_t 문법C 언어에서 size_t를

  13. C/C++에서 main() 함수의 반환값은 무엇이어야 할까?

    main() 함수의 반환값은 프로그램이 어떤 상태로 종료되었는지를 운영체제에 알려주는 중요한 신호입니다. 프로그램이 정상적으로 실행을 마치고 종료되었을 때는 0을 반환하는 것이 표준입니다. 반대로 코드에 오류나 예외가 발생하여 비정상적으로 종료된 경우에는 0이 아닌 값(일반적으로 1 또는 음수)을 반환하게 됩니다. C++ 언어에서는 main() 함수 마지막에 return 문을 명시하지 않아도 됩니다. 이 경우 컴파일러가 자동으로 0을 반환하도록 처리하기 때문에, 프로그래머가 따로 작성하지 않아도 정상 종료로 간주됩니다. main()

  14. C 언어에서 fgets()와 gets() 함수 완벽 비교

    fgets() 함수란?fgets() 함수는 문자열을 개행 문자(newline)까지 읽어들이는 데 사용됩니다. 이 함수는 배열의 경계를 검사하기 때문에 안전하게 사용할 수 있습니다.C 언어에서 fgets()의 기본 문법은 다음과 같습니다.char *fgets(char *string, int value, FILE *stream)각 매개변수의 의미는 다음과 같습니다.string − char 배열을 가리키는 포인터입니다.value − 읽어들일 최대 문자 수입니다.stream − 파일 객체를 가리키는 포인터입

  15. C/C++에서 malloc()과 new()의 차이점 완벽 비교

    C와 C++에서는 프로그램 실행 중에 필요한 만큼 메모리를 확보하는 동적 메모리 할당(Dynamic Memory Allocation) 기능을 제공합니다. 대표적인 방식이 바로 C의 malloc() 함수와 C++의 new 연산자입니다. 이 글에서는 두 방식의 문법, 동작 원리, 실제 예제를 통해 차이점을 자세히 살펴보겠습니다. 1. malloc() 함수란? malloc() 함수는 요청한 크기만큼의 바이트를 메모리에 할당하고, 할당된 메모리 블록의 첫 번째 바이트를 가리키는 포인터를 반환합니다. 메모리 할당에 실패하면 널 포인터(NUL

  16. C/C++에서 void 포인터의 크기는 얼마일까?

    void 포인터의 크기는 고정되어 있지 않으며, 프로그램이 실행되는 시스템 아키텍처에 따라 달라집니다. 포인터는 데이터 자체가 아니라 메모리 주소를 저장하는 변수이기 때문에, 그 크기는 시스템이 사용하는 주소 공간의 크기에 의해 결정됩니다.16비트 시스템: void 포인터의 크기는 2바이트32비트 시스템: void 포인터의 크기는 4바이트64비트 시스템: void 포인터의 크기는 8바이트다음은 C 언어에서 void 포인터의 크기를 실제로 확인하는 예제입니다.예제#include <stdio.h>int main() {&nbs

  17. C/C++ isblank() 함수 완벽 정리: 공백 문자 검사 방법과 예제 코드

    C/C++에서 isblank() 함수는 전달된 문자가 공백(blank) 문자인지 여부를 검사하는 데 사용됩니다. 이 함수가 판별하는 공백 문자는 기본적인 스페이스(space) 문자와 탭(tab) 문자(\t) 두 가지입니다.이 함수는 C 언어에서는 ctype.h 헤더 파일에, C++ 언어에서는 cctype 헤더 파일에 선언되어 있습니다.isblank() 함수의 문법C++에서 isblank() 함수의 기본 문법은 다음과 같습니다.int isblank(int char);함수는 매개변수로 전달된 문자가 공백 또는 탭이면 0이 아닌 값(tr

  18. C/C++ iswblank() 함수 완벽 정리: 와이드 문자 공백 검사 방법

    iswblank() 함수란?iswblank() 함수는 전달된 와이드 문자(wide character)가 공백(blank)인지 여부를 검사하는 함수입니다. 이 함수는 기본적으로 스페이스(space) 문자를 공백으로 판단하며, 탭 문자(\t) 역시 공백으로 간주합니다.C 언어에서는 ctype.h 헤더 파일에, C++ 언어에서는 cctype 헤더 파일에 선언되어 있으므로, 사용하기 전에 반드시 해당 헤더 파일을 포함해야 합니다.함수 구문C++ 언어에서 iswblank() 함수의 구문은 다음과 같습니다.int iswblank(wint_t

  19. C/C++ iswpunct() 함수 완벽 정리: 와이드 문자 구두점 검사 방법

    iswpunct() 함수란?C/C++에서 iswpunct() 함수는 전달된 와이드 문자(wide character)가 구두점(punctuation)인지 여부를 검사하는 데 사용됩니다. 만약 해당 문자가 구두점이 아니라면 0을 반환하고, 구두점이라면 0이 아닌(non-zero) 값을 반환합니다. 이 함수는 cwctype 헤더 파일에 선언되어 있으므로, 사용하기 위해서는 반드시 해당 헤더를 포함해야 합니다.참고로 일반 문자를 검사하는 ispunct() 함수와 달리, iswpunct()는 유니코드 등 확장된 문자 집합을 다루는 wint_

  20. C 언어 strcspn() 함수 완벽 가이드: 사용법과 예제

    strcspn() 함수란?C 언어의 strcspn() 함수는 두 문자열을 비교하여, 첫 번째 문자열에서 두 번째 문자열에 포함된 문자가 처음으로 일치하기 전까지의 문자 개수를 계산합니다. 즉, 첫 번째 문자열을 처음부터 훑으며 두 번째 문자열의 어떤 문자와도 일치하지 않는 초기 구간의 길이를 반환합니다.이 함수는 C 표준 라이브러리의 “string.h” 헤더 파일에 선언되어 있으며, 반환형은 size_t입니다. 만약 일치하는 문자가 하나도 없다면 첫 번째 문자열의 전체 길이를 반환합니다.함수 구문size_t s

Total 1443 -컴퓨터  FirstPage PreviousPage NextPage LastPage CurrentPage:5/73  20-컴퓨터/Page Goto:1 2 3 4 5 6 7 8 9 10 11