# include <stdio.h>

typedef struct _stu {
 int v1;
 int v2;
}stu;

int main(void) {
 stu s;
 printf("address(s) => %p\n", &s);
 __asm
 {
  lea  edi, s;
  mov  eax, edi;
  mov  dword ptr[eax + 0], 10;
  mov  dword ptr[eax + 4], 11;
 }
 printf("s.v1 => %d\n", s.v1);
 printf("s.v2 => %d\n", s.v2);
 return 0;
}

///////////////////////////////////////////////////////////////////////////////////////////

 

#include <stdio.h>

typedef struct _stu
{
 int v1;
 int v2;
 int v3;
}stu;

int main(void)
{
 stu s;
 /*
 int* p = NULL;
 p = &s.v1;
 *p = 10;
 p += 1;
 *p = 11;
 p += 1;
 *p = 12;
 printf("s.v1 : %d\n", s.v1);
 printf("s.v2 : %d\n", s.v2);
 printf("s.v3 : %d\n", s.v3);
 */
 void* p = NULL;
 p = &s;
 //int(*p) = 1;
 printf("sizeof(p) => %d\n", sizeof(p));
 printf("address(p) => %x\n", (int)p+4);
 printf("address(s.v1) => %x\n", &(s.v2));
 //p += 1;
 //*p = 2;

 return 0;
}

'언어 > c언어' 카테고리의 다른 글

# 네이버 문제_풀이 ( 쓸데없이 공들임 ㅋㅋㅋㅋ)  (0) 2017.10.22
#네이버 문제 풀이  (0) 2017.10.22
# 네이버 _ 2017_10_21  (0) 2017.10.21
#네이버 문제  (0) 2017.10.19
학생들 자리 랜덤 코드  (0) 2017.10.16