C++中*p的值是什么意思?
5个回答
展开全部
*p 说明p是一个指针,指向一个存储空间
*p的值就是它指向的存储空间的存储的值
如int *p,a;//定义p是一个指向整型变量的指针变量..
p=&a;//p的值为a的地址,即p指向a
a=5;//a的值为5,a与*p是等价的,那么a=5,即是*p=5
printf("%d",*p);//输出结果为5
同理
char *p;//定义p为一个指向字符型变量的指针变量...
char c;
p=&c;//p的值为变量c的地址,即p指向c..
*p='a';//与c='a'等价
printf("%c",c);输出结果为a
一句话:
*p的值就是它所指向的元素的值(p的值为它所指向的元素的地址,和*p是不一样的)
*p的值就是它指向的存储空间的存储的值
如int *p,a;//定义p是一个指向整型变量的指针变量..
p=&a;//p的值为a的地址,即p指向a
a=5;//a的值为5,a与*p是等价的,那么a=5,即是*p=5
printf("%d",*p);//输出结果为5
同理
char *p;//定义p为一个指向字符型变量的指针变量...
char c;
p=&c;//p的值为变量c的地址,即p指向c..
*p='a';//与c='a'等价
printf("%c",c);输出结果为a
一句话:
*p的值就是它所指向的元素的值(p的值为它所指向的元素的地址,和*p是不一样的)
展开全部
这个不等价于二维数组,只不过用法相似。
int a
int *p = &a //p存储的是一个 “ int型的变量a的地址”
int **q = &p //是q存储的是一个“指向int型的变量a的地址的指针的地址”
你可以类比一下,将int*看成一个整体,也就是(int*)(*p)
和你平时用的声明指针的方式非常相似(int)(*p)
一个是指向int类型的指针,一个是指向int*类型的指针.
int a
int *p = &a //p存储的是一个 “ int型的变量a的地址”
int **q = &p //是q存储的是一个“指向int型的变量a的地址的指针的地址”
你可以类比一下,将int*看成一个整体,也就是(int*)(*p)
和你平时用的声明指针的方式非常相似(int)(*p)
一个是指向int类型的指针,一个是指向int*类型的指针.
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
是个指针,指向一个内存地址,具体内容上百度百科搜索指针。
p知pointer,一般教学中喜欢使用p来做指针名,也可以用其他的,前面一定加个*,指针的意思。如*dfjdsfh,*njfjjh,注意不要和已有变量、已定义变量重了。
p知pointer,一般教学中喜欢使用p来做指针名,也可以用其他的,前面一定加个*,指针的意思。如*dfjdsfh,*njfjjh,注意不要和已有变量、已定义变量重了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
具体实现是放在math.h里,具体有:
1 三角函数
double sin (double);
double cos (double);
double tan (double);
2 反三角函数
double asin (double); 结果介于[-PI/2, PI/2]
double acos (double); 结果介于[0, PI]
double atan (double); 反正切(主值), 结果介于[-PI/2, PI/2]
double atan2 (double, double); 反正切(整圆值), 结果介于[-PI/2, PI/2]
3 双曲三角函数
double sinh (double);
double cosh (double);
double tanh (double);
4 指数与对数
double exp (double);
double pow (double, double);
double sqrt (double);
double log (double); 以e为底的对数
double log10 (double);
5 取整
double ceil (double); 取上整
double floor (double); 取下整
6 绝对值
double fabs (double);
7 标准化浮点数
double frexp (double f, int *p); 标准化浮点数, f = x * 2^p, 已知f求x, p ( x介于[0.5, 1] )
double ldexp (double x, int p); 与frexp相反, 已知x, p求f
8 取整与取余
double modf (double, double*); 将参数的整数部分通过指针回传, 返回小数部分
double fmod (double, double); 返回两参数相除的余数
source: 《C & C++ Code Capsules》
不单单是C++中有sqrt,计算机语言都封装了math
sqrt是开平方,求平方根.
1 三角函数
double sin (double);
double cos (double);
double tan (double);
2 反三角函数
double asin (double); 结果介于[-PI/2, PI/2]
double acos (double); 结果介于[0, PI]
double atan (double); 反正切(主值), 结果介于[-PI/2, PI/2]
double atan2 (double, double); 反正切(整圆值), 结果介于[-PI/2, PI/2]
3 双曲三角函数
double sinh (double);
double cosh (double);
double tanh (double);
4 指数与对数
double exp (double);
double pow (double, double);
double sqrt (double);
double log (double); 以e为底的对数
double log10 (double);
5 取整
double ceil (double); 取上整
double floor (double); 取下整
6 绝对值
double fabs (double);
7 标准化浮点数
double frexp (double f, int *p); 标准化浮点数, f = x * 2^p, 已知f求x, p ( x介于[0.5, 1] )
double ldexp (double x, int p); 与frexp相反, 已知x, p求f
8 取整与取余
double modf (double, double*); 将参数的整数部分通过指针回传, 返回小数部分
double fmod (double, double); 返回两参数相除的余数
source: 《C & C++ Code Capsules》
不单单是C++中有sqrt,计算机语言都封装了math
sqrt是开平方,求平方根.
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
int *p,x=20; //这里是定义了一个可以指向整数的指针
p=&x;
printf("%d",*p); //此处是间接运算符,表示取出指针p所指地址里存放的内容(在此例中是数字20)
p=&x;
printf("%d",*p); //此处是间接运算符,表示取出指针p所指地址里存放的内容(在此例中是数字20)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询