구조체에 대해서!
자랑
질문 제목 : 구조체 정의에 대해서 질문하고 싶어요...구조체 정의?질문 내용 : 제가 아는 구조체는structure 변수이름 {
멤버
}이건데. 아래의 것은 좀 달라서요
typedef는 이름 바꿔 주려고 쓰는거 아니가요? structure 일일히 쓰기 귀찮으니깐
근데 여기 보면 typedef 옆에 구조체 변수 이름이 아니라 그냥 변수가 있어서요 ㅜㅜ
그리고 안에 내용을 보면 struct tagnode* 가 있는데
보통 멤버로는 int 나 char 같은 데이터형을 쓰는 거 아닌가요?typedef int elementtype;typedef struct tagnode
{
elementtype data;
struct tagnode* nextnode;
} node;==================================================그리고node* sll_createnode(elementtype newdata)
{
node* newnode = (node*)malloc(sizeof(node)); newnode-data = newdata; /* 데이터를 저장한다. */
newnode-nextnode = null; /* 다음 노드에 대한 포인터는 null로 초기화 한다. */ return newnode;/* 노드의 주소를 반환한다. */
}여기서 구조체 node 에 * 이게 어째서 붙어 있는건지도 잘 모르겠어요 ㅜㅜ
newnode-data = newdata; 여기서 newdata 를 data의 주소값을 가리키고 있는 newnode에 대입하는 건가요??3가지 답변 부탁드립니다.그리고 제가 어떤 부분을 놓치고 있는 것인지 조언 부탁드릴께요.
제가 책을 찾아봤는데 이부분에 대한 설명은 없더라구요 ㅜㅜ
-
화이트캣
아.... 정말 감사합니다!!!
-
허리품
변수를 대입하려면 우선 변수의 타입을 생각 해야죠...
Data 의 타입과 NewData 의 타입을 다시 보세요~~
NewNode 는 Node* 타입이고, 인자로 넘어온 것은 ElementType 인데 타입이 맞는지요 ?? -
나슬
답변 감사합니다!
먼저...죄송해요 마지막 부분이 이해가 안갔어요.
-Data 는 ElementType 이니 인자로 넘어온 값을 여기에 넣어준다고 하셨는데
NewNode 가 아닌 Data에 넘어온 인자인 NewData 를 넣는거란 말씀이신가요?? -
모람
typedef 은 단지 구조체 에서만 쓰이는 것이 아니라, 타입을 재정의 하는 여러 곳에서 두루두루 쓰입니다.
typedef int ElementType; // int 라는 타입을 ElementType 이란 이름 으로도 쓰겠다는 재정의.
구조체는 구조체 내부에 자신의 포인터 타입이나 참조자를 멤버로 가질 수 있는 문법을 허용 합니다.
typedef struct tagNode{
ElementType Data;
struct tagNode
번호 | 제 목 | 글쓴이 | 날짜 |
---|---|---|---|
2676182 | 숫자 순서대로 배열하는법 | 권뉴 | 2024-11-24 |
2676152 | 기본적인거 하나 질문드립니다. | 개미 | 2024-11-24 |
2676124 | 함수선언관련 질문이에요~...털썩..수정완료 (2) | 가지 | 2024-11-24 |
2676092 | C언어 책 (2) | 아서 | 2024-11-24 |
2676065 | 웹사이트 또는 메신저 등에서 원하는 텍스트를 검사하는방법?? (1) | 모든 | 2024-11-23 |
2676033 | 배열 기초연습중 발생하는 에러 ㅠㅜ... | Creative | 2024-11-23 |
2676005 | keybd_event 게임 제어 | 영글 | 2024-11-23 |
2675900 | 진짜기본적인질문 | 글길 | 2024-11-22 |
2675845 | 수정좀해주세요ㅠㅠㅠ | 해골 | 2024-11-21 |
2675797 | 병합 정렬 소스 코드 질문입니다. (2) | 도래솔 | 2024-11-21 |
2675771 | 큐의 활용이 정확히 어떻게 되죠?? | 해긴 | 2024-11-21 |
2675745 | 도서관리 프로그램 질문이요 | 도리도리 | 2024-11-20 |
2675717 | 2진수로 변환하는것! (3) | 동생몬 | 2024-11-20 |
2675599 | for문 짝수 출력하는 법 (5) | 널위해 | 2024-11-19 |
2675575 | Linux 게시판이 없어서.. | 첫삥 | 2024-11-19 |
2675545 | 구조체 이용할 때 함수에 자료 넘겨주는 것은 어떻게 해야 하나요? | 아연 | 2024-11-19 |
2675518 | 사각형 가로로 어떻게 반복해서 만드는지좀.. 내용 | 신당 | 2024-11-18 |
2675491 | !느낌표를 입력하는것은 어떻게합니까~~?ㅠㅠ (5) | 사지타리우스 | 2024-11-18 |
2675411 | 파일입출력으로 받아온 파일의 중복문자열을 제거한 뒤 파일출력 | 앨버트 | 2024-11-17 |
2675385 | 링크드리스트 주소록 질문드립니다. (1) | 겨루 | 2024-11-17 |