#include<stdio.h>
int main(){
int a=10;
int *p;
//p是变量名 int *是一个指针类型 存放着int类型数据的地址 &取地址符 *指针运算符
p=&a;//p获得了a的地址
printf("a的值是%d,地址是%p",*p,p); //*p是对p变量进行指针运算 获得对应地址上变量的值
return 0;}
字符串和指针变量
#include<stdio.h>
#include<string.h>
int main(){
//字符串指针变量 在C语言中 并没有字符串类型 需要用数组代替
char str[]="This is my string test";
int len=strlen(str),i;
//直接输出字符串
printf("%s\n",str);
//按照数组形式 遍历输出字符串
for(i;i<len;i++){
printf("%c",str[i]);
}
//下面介绍指针类型遍历字符串 %s的特点是告诉对应字符串的首地址 即可读取整个字符串
char * ps;//这个指针变量用来存储字符串的首地址
ps="String s1"; //此处的字符串代表的是字符串的首地址
printf("\n%s",ps);
//使用%c时 输出为第一个位置上的对应字符
printf("\n%c",*ps);
//ps指针指向第一个地址 可以移动
ps+=2;
printf("\n移动指针后的字符串是%s",ps);
return 0;
}