VS2013
// C_Address.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
int _tmain(int argc, _TCHAR* argv[])
{
int a = 100;
char str[25] = "Good morning";
printf("%#X, %#X\n", &a, str);
getchar();
return 0;
}
%#X
表示以十六进制形式输出,并附带前缀0X
。a 是一个变量,用来存放整数,需要在前面加&
来获得它的地址;str 本身就表示字符串的首地址,不需要加&
。
C语言中有一个控制符%p
,专门用来以十六进制形式输出地址,不过 %p 的输出格式并不统一,有的编译器带0x
前缀,有的不带。