아하
생활

생활꿀팁

탈퇴한 사용자
탈퇴한 사용자

구조체를 쓰는 이유가 뭔가요?

구조체와 클래스의 차이나 문법적인 부분만 설명하지만

구조체는 왜 쓰는지에 대해서는 알려주지 않네요.

그냥 구조체 말고 배열을 쓰면 되는 것 같은데

구조체를 써야 하는 이유가 있나요?

예시를 들어주시면 감사하겠습니다.

55글자 더 채워주세요.
5개의 답변이 있어요!
  • 느리지만 행복하고 싶은 달팽이
    느리지만 행복하고 싶은 달팽이

    안녕하세요. A-HA 프로그래밍 전문가입니다.

    다양한 정보를 하나의 객체에 담기 위해 구조체를 사용합니다.

    단순하게 문자열이나 숫자 값을 저장하려면 배열로 저장을 해도 되지만, 만약 사람의 키와 몸무게 나이 등 다양한 정보를 함꼐 저장 해야 된다면 배열로는 할 수 없죠.

    그래서 보통 구조체를 만들어 리스트로 관리를 합니다.

  • 안녕하세요

    왜 배열을 안쓰고 구조체를 사용하냐고 물어보셨는데요.

    배열은 동일한 정보를 여러개 가지고 있을때 , 구조체는 다양한 변수를 가질때 사용합니다.

    예를 들어 10명의 학생의 나이를 다루고 싶으면

    나이[10] 이렇게 선언하면 되고

    학생의 신상정보를 다루고 싶으면 구조체로 하는거죠

    학생이라는 구조체에 나이, 이름, 성별을 넣는것입니다.

    나이는 UINT8로 관리하고 이름 같은 경우는 다른 변수로 관리해야하기 때문에 구조체를 사용하는 것입니다.

  • 구조체는 하나의 구조체변수로 여러가지의 정보를 담고 처리할수 있다고생각하시면될것같습니다.

    말씀하시는 배열은 int a[5]같은 일반 변수의 배열을의미하시는것같은데요. 이것으로는한가지의 정보만 여러 인덱스에 걸쳐 담고 처리할수 있는 반면, 구조체는 여러가지정보를 한 꾸러미로 묶어 처리할수있다고 생각하시면됩니다.

    참고로 구조체도 배열로사용할수 있습니다.

  • 안녕하세요. 4년차 fw 개발자 입니다.

    배열과 구조체는 생김세며 쓰임세며 완전히 다른 존재입니다.

    우선 구조체와 클래스는 제가 원하는 대로 변수의 타입을 정할 수 있습니다.

    사람이라는 클래스가 있다면 이 사람의 대한 정보는 이름(string) 나이(integer) 키(double) 등등의 여러 정보를 가지고 있습니다.

    이 여러 타입의 정보를 배열안에 저장 한다는것은 불가능하기에 직접 구조체와 클래스를 선언해서 사용 하는것이지요

  • 안녕하세요.

    현직 머신러닝 / 딥러닝 연구 개발자입니다.

    단순히 배열을 사용하기에는 어떠한 개체가 가지고 있는 특징을 포함하기 어렵습니다.

    구조체의 경우 하나의 개체의 특징을 개체 내에 포함할 수 있기에 더 많이 사용됩니다.

    물론 배열을 통해 사용할 수 있지만 구조체가 더 편하기에 사용됩니다.

    답변이 마음에 드셨으면 채택을 해주시면 감사하겠습니다.