typedef을 이용하여 변수 선언 이후 대입방법.
다가
질문 내용 :
제가 아래와 같이 구조체를 작성하였습니다.
typedef char byte_8[8];
typedef char byte_6[6];
typedef char byte_4[4];
typedef char byte_2[2];
typedef char byte_1;
----------------------------------------------
이 후에..
메인함수 안에 아래와 같이 작성하였습니다.
_msg msg; === 이거는 제가 만든 메세지라는 구조체입니다. 다소복잡 -_-;
byte_1 Version_val;
byte_1 Flags_val;
byte_2 Function_Type_val;
byte_1 OP_ID_val;
byte_1 Message_Type_val;
byte_2 Length_val;
byte_6 MSID_val;
byte_4 Reserved1_val;
byte_2 Transaction_ID_val;
byte_2 Reserved2_val;
--------------------------------------------------
Version_val = msg.msg_head.Version;
Flags_val = msg.msg_head.Flags;
Function_Type_val = msg.msg_head.Function_Type;
OP_ID_val = msg.msg_head.OP_ID;
Message_Type_val = msg.msg_head.Message_Type;
Length_val = msg.msg_head.Length;
MSID_val = msg.msg_head.MSID;
Reserved2_val = msg.msg_head.Reserved1;
Transaction_ID_val = msg.msg_head.Transaction_ID;
Reserved2_val = msg.msg_head.Reserved2;여기서 질문은 배열로 만들지 않은 변수들은 정상적으로 값이 들어가는데
배열로 만들어서 2바이트, 4바이트, 6바이트 짜리들은 정상적으로 들어가지 않습니다. 타입이 다르니깐요..
여기까지는 알겠는데 제가 이 변수에 데이터값을 넣어야 하는데 어떻게 넣어야 할지 막막합니다.
혹시 질문이 모호하시다면 댓글에 글 남겨주시면 제가 아는 한도내에 댓글로 추가 질문하겠습니다.
감사합니다.
-
미쿡 2024-12-18
감사합니다
-
재바우 2024-12-18
메모리 복사 함수(memcpy/memmove)를 사용하거나, 루프를 돌려서 대입하면 됩니다..
[memcpy/memmove 사용을 추천... 더 간편하니까요..]
그리고 추가로 C 기본서부터 읽으세요 ;;;......
지금 하신 질문들은, C 문법서에서 배열, 포인터 장을 숙지하셨다면 안 하셨을 질문들이니까요... -
맛깔손 2024-12-18
아 그리고 에러나는 부분에 * - 이아이(아스테리스크문자) 를 이용하면 에러는 나지 않습니다.
그이유도 궁금하네요.. -
찬솔나라 2024-12-18
추가 : 그냥 short, int, double 형으로 선언하려고 하다가 위와 같이 만들었는데 쉽지가 않네요.
번호 | 제 목 | 글쓴이 | 날짜 |
---|---|---|---|
2693984 | 오버로딩이 무엇인가요? (2) | 헛매질 | 2025-05-07 |
2693956 | PlaySound재생이 안됩니다!(C에 음악넣기) | 지존 | 2025-05-06 |
2693928 | &와 *의 사용에 관한 명확한 이해 | 제나 | 2025-05-06 |
2693903 | 반복문 설명좀요 ㅠㅠ (2) | 란새 | 2025-05-06 |
2693869 | stdio.h 는 왜 쓰는건가요? (1) | 큰꽃들 | 2025-05-06 |
2693842 | 포인터 변수의 주소값끼리 더하는 것에 대해서 질문드립니다. (1) | 진솔 | 2025-05-05 |
2693811 | 소수 출력;;;; | 화이트캣 | 2025-05-05 |
2693788 | 이런 함수는 없나요? (3) | 앤드류 | 2025-05-05 |
2693758 | txt파일 불러와서 행렬로 저장 | 큰애 | 2025-05-05 |
2693727 | scanf 오류 문제!! (2) | 큰나래 | 2025-05-04 |
2693704 | 구조체 주소록 문제인데 도와주세요 (2) | 도1도캣 | 2025-05-04 |
2693676 | 열혈강의 c언어 질문입니다 | 하양이 | 2025-05-04 |
2693647 | 12.620000 을요 12.620 으로 어떻게 표현해요? (2) | 파도 | 2025-05-04 |
2693619 | 타이틀 코드.. | 단순드립 | 2025-05-03 |
2693591 | 컴파일 에러에서 질문드립니다 (3) | 게자리 | 2025-05-03 |
2693463 | 동적할당 이용시 fwrite사용을 어떻게 해야하나요..? (10) | 일본어못해요 | 2025-05-02 |
2693387 | 배열문제입니다 수정오류캡쳐했습니다 (6) | 연하얀 | 2025-05-01 |
2693356 | text 입출력 내림차순 질문입니다 ㅠ | 빛글 | 2025-05-01 |
2693328 | C언어를이용해서 .txt파일 외에 다른 확장자 파일 삭제가 가능한지.. (2) | 대나무 | 2025-05-01 |
2693299 | 파일입출력 바이너리파일 | 독특한 | 2025-04-30 |