#include <iostream>
using namespace std;
#include<string.h>
int main()
{
char s[]="fullofovle";
char *q;
q=s;
int a[4]={1,2,3,4};
int *p;
p=a;
printf("%d\n",a);//首地址&a[0]的十进制表示;
printf("%x\n",a);//首地址&a[0]的十六进制表示;
printf("%d\n",a[0]);//数组的第一个元素
printf("%d\n",p);//p=&a[0],表示首地址&a[0]的十进制表示;
printf("%d\n",*p);//数组的第一个元素a[0]
cout<<a<<endl;//首地址&a[0]的十六进制表示;
cout<<p<<endl;//同上,输出首地址;
cout<<&s<<endl;//数组s的首地址
printf("%x\n",s);//数组s的首地址十六进制表示(地址高位为0去掉)
printf("%c\n",s);//将十六进制地址表示的字符输出
printf("%c\n",&s);//将首地址(十六进制地址)表示的字符输出
printf("%c\n",97);
printf("%c\n",s[0]);//数组第一个元素s[0]
printf("%s\n",s);//整个数组
printf("%c\n",q);//将首地址(十六进制地址)表示的字符输出
printf("%s\n",q);//整个数组
cout<<s<<endl;//整个数组
cout<<q<<endl;//整个数组
//不要忘记还有一种关于&的用法(只在字符串数组中才能使用)
printf("%s\n",&s[1]);//从第二个位置输出字符串数组数组
cout<<&s[1];//同上
return 0;
}
苦心整理,从老师那里摘录了很多;
看了这么多,觉得解决问题了,就收藏点赞*> 。<*.