0

Hello all,

I worte a structure and filled the data, then i need to send them on tcp socket. before that i need to send only few data and i need to split them into bytes and need to store them in other array.

Here is the code below

#include "stdafx.h"
#include <string.h>
#include <malloc.h>

struct Test
{

 int sno;
 char name[24];
 int rno;
 
} testexmp;

//conversion of structure into bytes
unsigned long int x;
void dumpHex ( void *p, size_t size ) 
{
  //int *list = malloc(n* sizeof(int));
  unsigned char *bytes = (unsigned char *)p;
  
  for (size_t i = 0 ; i < size ; i++ )
  {
    unsigned int b = bytes[i];
	if (b>3)
	{

/*    how to copy the remaining bytes into other array  */

	printf(" i=%d 0x%02x \n",i,(char*)bytes[i]);
	memcpy(&x, bytes, sizeof(long));
	}
  }
 }


int main(int argc, char* argv[])
{

	printf("size of the test structure is %d \n",sizeof(testexmp));

	testexmp.sno=1;
	strcpy(testexmp.name,"testsample");
	testexmp.rno=10;


	 dumpHex(&testexmp,sizeof(testexmp));

	
	


	printf("sno is %d \n",testexmp.sno);
	printf("name  is %s \n",testexmp.name);
	printf("roll no is %d \n",testexmp.sno);


	
	return 0;
}
4
Contributors
3
Replies
4
Views
8 Years
Discussion Span
Last Post by William Hemsworth
This topic has been dead for over six months. Start a new discussion instead.
Have something to contribute to this discussion? Please be thoughtful, detailed and courteous, and be sure to adhere to our posting rules.