목록컴퓨터/C (3)
취미생활
TCP/IP 통신으로 데이터 패킷을 주고 받으면 8bit 데이터 배열을 특정 자료형으로 변경해야 하는 일이 생긴다. 이러한 경우 union(공용체) 으로 쉽게 형변환하여 데이터를 볼 수 있다. #include #include union packet // union 선언 { int t_int; char t_char[4]; float t_float; }; void tcp_something(packet* target){ const int val = 143; const int max = sizeof(packet); snprintf(target->t_char, sizeof(target), "123"); // 데이터 입력 지점 } int main() { packet s; tcp_something(&s); print..
최근 코딩테스트를 본 회사에서 참 재밌는 경험을 했다. 코딩테스트를 C로 본 건데 대부분의 자료구조가 구현된 C++ 를 쓸 때와는 달리 자료구조를 내가 구현해야 했기 때문에 조금 귀찮았다. 그렇게 어려운 구현이 필효하진 않았고 Queue 구현 정도? 그러면서 Queue 구현을 C로 해봤는데 생각보다 너무 간단하게 나와서 적어둔다. #include int main(int argc, char **argv){ int q[100] = {0,}; int bot = 0; int top = 0; //insert q[bot] = 1; bot += 1; //exception check if(bot >= 100) bot = 0; //pop if(bot == top){ printf("empty!\n"); } else{ pr..
https://github.com/DJmong/Data-Structure/tree/master/doubleLinkedList 코드 전문 #include #include #include #include #define TRUE 1 #define FALSE 0 //#define _DEBUG_ typedef struct data{ char szName[128]; int iValue; struct data *prev; struct data *next; }DATA; DATA* nextList(const DATA *node); void addList(DATA *node); void delList(DATA **node); DATA *prevList(const DATA *node); void insertData(DATA..