| 일 | 월 | 화 | 수 | 목 | 금 | 토 | 
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | 3 | 4 | 5 | 6 | 7 | 8 | 
| 9 | 10 | 11 | 12 | 13 | 14 | 15 | 
| 16 | 17 | 18 | 19 | 20 | 21 | 22 | 
| 23 | 24 | 25 | 26 | 27 | 28 | 29 | 
| 30 | 
													Tags
													
											
												
												- 홍혜걸
 - 이지혜
 - 픽크루
 - 유튜버 김재석
 - 이태원 클라쓰 15회 예고
 - 조희연
 - 학교 개학 연기 4월
 - 스콜피온킹
 - 해킹
 - 금리인하
 - 킹덤 고근희
 - 은혜의 강 교회
 - 이상형 만들기
 - 스페인 코로나
 - libtins
 - 김영권 아내
 - 뭉쳐야 찬다
 - 최강욱
 - 성남은혜의강교회
 - 불가피
 - 김재석
 - 임영규
 - 김영권
 - 성남 코로나 확진자
 - 폰폰테스트
 - 고민정
 - 제넥신
 - 리리남매
 - 양적완화
 - 미국 금리인하
 
													Archives
													
											
												
												- Today
 
- Total
 
Dork's port
16진수로 값 출력 및 mac address 출력하기 (C++) 본문
패킷을 디버깅 또는 내용을 알기 위해서 16진수로 값을 출력 하거나, mac address를 출력해야하는 경우가 있는데
아래의 소스코드를 통해 간단하게 출력할 수 있습니다. 또한, 메모리에 있는 값을 출력할때에도 사용 할 수있고, 메모리에 저장되어 있는 값을 디버깅 할때에도 사용할 수 있습니다.
#include <iostream>
#include <iomanip>
using namespace std;
void printLine()
{
    cout<<"-----------------------------------------------"<<endl;
}
void printByHexData(u_int8_t *printArr, int length)
{
    for(int i=0;i<length;i++)
    {
        if(i%16==0)
            cout<<endl;
        cout<<setfill('0');
        cout<<setw(2)<<hex<<(int)printArr[i]<<" ";
    }
    cout<<dec<<endl;
    printLine();
}
void printByMAC(u_int8_t *printArr,int length)
{
    for(int i=0;i<length;i++)
    {
        cout<<setfill('0');
        cout<<setw(2)<<hex<<(int)printArr[i];
        if(i!=5)
            cout<<":";
    }
    cout<<dec<<endl<<endl;
}
'Develop' 카테고리의 다른 글
| 네트워크 각 헤더의 Next Type 파싱하기. (0) | 2017.09.25 | 
|---|---|
| map 출력하기(C++) (0) | 2017.09.24 | 
| Linux libpcap 을 이용한 packet capture (0) | 2017.09.22 | 
| invalid operands to binary expression (C++11) (0) | 2017.09.22 | 
| Checksum 계산하기[소스 코드] (C++) (0) | 2017.09.22 | 
			  Comments