본문 바로가기

전체 글221

c언어 구조체에서 사용되는 포인터에 대하여 알아보기 c언어 구조체에서 사용되는 포인터에 대하여 알아보기 네 안녕하세요 이번 포스팅에서는 구조체에서 사용되는 포인터에 대하여 알아보려고 합니다. 우리가 구조체를 사용할 때 사용이 되는 포인터는 크게 두 가지입니다. 구조체를 가리키는 포인터 포인터를 멤버로 가지는 구조체 이렇게 두 가지인데, 이 둘을 차례대로 살펴보면서 어떻게 사용이 되는지 한 번 알아보도록 하겠습니다. 1. 구조체를 가리키는 포인터 구조체를 가리키는 포인터는 말 그대로 구조체를 가리키고 있는 포인터입니다. 우리가 변수를 포인터로 가리키는 것과 똑같습니다. 사용 방법은 이렇습니다. struct student s = {24, "Kim", 3.5}; struct student *p; p = &s; printf("학번 = %d, 이름 = %s, 학점.. 2023. 1. 29.
c언어 구조체의 배열에 대하여 알아보기 c언어 구조체의 배열에 대하여 알아보기 네 안녕하세요, 이번 포스팅에서는 구조체의 배열에 대하여 알아보는 시간을 가져보도록 하겠습니다. 우리가 구조체를 쓰면 여러 개의 자료형을 한 번에 묶어서 저장이 가능하다는 것을 알 수 있었습니다. 하지만, 실제로 우리가 프로그램을 만들게 되면 절대로 한 개의 데이터만을 가지고서 처리를 하지 않죠? 그렇기 때문에 다수의 데이터를 저장을 해야만 하는데, 그럴 경우에 구조체 배열을 사용을 하게 됩니다. 그럼 이를 어떻게 사용을 하는지 지금부터 알아보도록 하겠습니다. 1. 구조체 배열의 선언 구조체 배열은 우리가 일반적으로 사용을 하는 배열을 선언하는 것과 매우 비슷합니다. 다만, 구조체이기 때문에 앞에 struct가 붙는다는 것이 다른 점입니다. 선언은 이런 식으로 합니.. 2023. 1. 29.
c언어 구조체의 활용 방법 알아보기 c언어 구조체의 활용 방법 알아보기 네 안녕하세요, 이번 포스팅에서는 구조체를 활용하는 방법들에 대하여 알아보도록 하겠습니다. 저번 포스팅에서는 구조체의 기본 선언 및 사용법을 익혔는데요, 실제로 어떤 식으로 활용을 하는 지도 알아야겠죠? 그래서 그 부분에 대하여 같이 알아보고자 합니다. 그럼 지금부터 같이 보시죠. 1. 구조체를 멤버로 가지는 구조체 우리가 이전 포스팅에서 다뤘던 구조체의 특징 중 하나가 어떤 자료형을 쓰더라도 구조체의 변수가 될 수 있다는 겁니다. 심지어 포인터조차도 구조체의 멤버가 될 수 있습니다. 그렇기 때문에 구조체 역시도 구조체 안에 포함을 시킬 수 있습니다. 예를 들자면 이런 식으로 말이죠. 어떤 학생의 정보를 우리가 구조체에 입력을 한다고 가정을 해봅시다. 해당 학생의 학번.. 2023. 1. 26.
c언어 구조체의 선언, 초기화, 멤버 참조, 이름 없는 구조체에 대하여 알아보기 c언어 구조체의 선언, 초기화, 멤버 참조, 이름 없는 구조체에 대하여 알아보기 네 안녕하세요, 이번 포스팅에서는 구조체를 선언하고 초기화를 하고, 참조하는 방법, 그리고 이름이 없는 구조체에 대하여 알아보는 시간을 가져보도록 하겠습니다. 저번 시간에는 구조체가 어떻게 생긴 녀석인가 정도에 대하여 간략히 알아보는 시간을 가졌다면, 이제부터는 본격적으로 구조체를 사용을 해볼 것입니다. 그럼 지금부터 시작하도록 하겠습니다. 1. 구조체의 선언 구조체는 이전 포스팅에서 말씀드렸다시피, 서로 다른 다수의 자료형을 묶어서 하나의 덩어리 진 새로운 자료형을 만드는 것이라고 했습니다. 구조체는 'struct'라는 키워드를 이용하여 다음과 같이 정의가 됩니다. struct student { int number; cha.. 2023. 1. 15.
c언어 구조체에 대하여 간단히 알아보기 c언어 구조체에 대하여 간단히 알아보기 네 안녕하세요, 이번 포스팅에서는 구조체에 대하여 간단하게 알아보는 시간을 가져보도록 하겠습니다. 우리가 c언어로 프로그램 다운 프로그램을 만들기 위해 알아야 하는 최소한의 진도가 구조체까지입니다. 이전까지 배웠던 것들은 놀랍게도 진짜 기본 중에 기본이고, 이 구조체부터 제대로 된 프로그램을 만들기 위한 초석이 될 것입니다. 그렇기 때문에 여기서부터는 진짜 본인이 개발을 한다는 생각으로 임해주시면 더 도움이 되리라 생각합니다. 그럼 지금부터 시작하겠습니다. 1. 구조체란? 우리가 배우는 c언어의 자료형은 크게 3가지로 나눌 수 있습니다. 기초 자료형 : int, char, float, double 등의 제일 기본이 되는 자료형 파생 자료형 : 배열, 포인터, 구조체.. 2023. 1. 11.
c언어 문자와 문자열을 이용하여 여러 가지 문제 풀기(단어 세기, 영상 파일명 자동 생성하기, 한영사전 구현하기, 메시지 암호화 하기, 행맨 게임 만들기) c언어 문자와 문자열을 이용하여 여러 가지 문제 풀기(단어 세기, 영상 파일명 자동 생성하기, 한영사전 구현하기, 메시지 암호화 하기, 행맨 게임 만들기) 네 안녕하세요, 이번 포스팅에서는 지금까지 배웠던 문자와 문자열을 이용하여 여러가지 문제들을 풀어보는 시간을 가져보려 합니다. 코딩 공부에서 사실 가장 중요한 요소는 틈틈이 연습을 해서 몸에 익히는 것이 가장 좋기 때문에 이 문제들을 같이 고민하고 풀면서 다 독자분들의 것으로 만드셨으면 좋겠습니다. 그럼 지금부터 시작하도록 하겠습니다. 1. 단어 세기 제일 처음으로 풀어볼 문제는 단어 세기 프로그램을 만드는 것입니다. 일단 단어가 되려면 첫 글자가 알파벳이 되어야 하기 때문에 알파벳인지 아닌지 검사를 해주는 함수가 필요하고, 만일에 첫 글자가 알파벳이.. 2023. 1. 9.
c언어 문자열을 여러 개 저장하는 방법에 대하여 알아보기 c언어 문자열을 여러 개 저장하는 방법에 대하여 알아보기 네 안녕하세요, 이번 포스팅에서는 문자열을 여러 개 저장하는 방법에 대하여 알아보는 시간을 가져보도록 하겠습니다. 우리는 지금까지 문자열을 하나만 다뤘었는데, 사실 실제로 프로그램을 만들다 보면 문자열을 여러 개 저장해야 하는 경우가 훨씬 많습니다. 그래서 우리는 그러한 방법을 알고 있어야 나중에 하드 코딩을 하지 않고 원활히 코드를 짤 수 있습니다. 그럼 지금부터 시작하도록 하겠습니다. 1. 문자열을 여러 개 저장하는 방법 문자열을 여러 개 저장하는 방법은 크게 2가지가 있습니다. 2차원 문자 배열을 이용하여 저장하기 문자 포인터 배열을 사용하여 저장하기 이 두 가지를 이용하며, 나중에 배울 구조체를 이용해서도 저장을 하는데, 그건 나중에 다루도.. 2023. 1. 6.
c언어 문자열을 수치로 변환하는 방법 알아보기 c언어 문자열을 수치로 변환하는 방법 알아보기 네 안녕하세요, 이번 포스팅에서는 문자열을 수치로 변환하는 방법에 대하여 알아보도록 하겠습니다. 우리가 문자열을 처리할 때 때때로 문자열을 수치로써 변환해야 하는 경우도 생깁니다. 제일 대표적인 경우가 숫자 등을 문자열로 변환하는 경우이죠. 그래서 어떤 수치를 문자열로 변환을 하거나, 아니면 그 반대로 문자열을 수치로 변환을 하는 경우에는 어떤 함수를 써야 가능한지 알아보도록 하겠습니다. 그럼 지금부터 함께 보시죠. 1. sscanf(), sprintf() 이 두 함수는 문자열을 수치로 변환 및 수치를 문자열로 변환을 해주는 함수입니다. 예를 들면 이런 경우입니다. 36.5라는 변수가 있다고 칩시다. 그러면 이 36.5는 실수값이기 때문에 문자열과는 다른 수.. 2022. 12. 31.