沈阳商城网站开发wordpress 简洁模板
沈阳商城网站开发,wordpress 简洁模板,建立容错纠错机制,湖北专业网站建设一、字符指针变量
在指针的类型中我们知道有⼀种指针类型为字符指针 char* ; ⼀般使⽤:
int main()
{
char ch w;
char *pc ch;
*pc w;
return 0;
}
还有⼀种使⽤⽅式如下#xff1a;
int main()
{
const char* pstr hello bit.;//这⾥是把⼀个字…一、字符指针变量
在指针的类型中我们知道有⼀种指针类型为字符指针 char* ; ⼀般使⽤:
int main()
{
char ch w;
char *pc ch;
*pc w;
return 0;
}
还有⼀种使⽤⽅式如下
int main()
{
const char* pstr hello bit.;//这⾥是把⼀个字符串放到pstr指针变量⾥了吗
printf(%s\n, pstr);
return 0;
}代码 const char* pstr hello bit.; 特别容易让同学以为是把字符串 hello bit 放 到字符指针 pstr ⾥了但是本质是把字符串 hello bit. ⾸字符的地址放到了pstr中。
上⾯代码的意思是把⼀个常量字符串的⾸字符 h 的地址存放到指针变量 pstr 中。
笔试题我们⼀起来学习⼀下
#include stdio.h
int main()
{
char str1[] hello bit.;
char str2[] hello bit.;
const char *str3 hello bit.;
const char *str4 hello bit.;
if(str1 str2)
printf(str1 and str2 are same\n);
else
printf(str1 and str2 are not same\n);
if(str3 str4)
printf(str3 and str4 are same\n);
else
printf(str3 and str4 are not same\n);
return 0;
}
结果
解析
这⾥str3和str4指向的是⼀个同⼀个常量字符串。C/C会把常量字符串存储到单独的⼀个内存区域当⼏个指针指向同⼀个字符串的时候他们实际会指向同⼀块内存。但是⽤相同的常量字符串去初始化不同的数组的时候就会开辟出不同的内存块。所以str1和str2不同str3和str4相同。 二、数组指针变量
2.1 数组指针变量是什么 之前我们学习了指针数组指针数组是⼀种数组数组中存放的是地址指针。 数组指针变量是指针变量还是数组 答案是指针变量。 我们已经熟悉 • 整形指针变量 int * pint; 存放的是整形变量的地址能够指向整形数据的指针。 • 浮点型指针变量 float * pf; 存放浮点型变量的地址能够指向浮点型数据的指针。 那数组指针变量应该是存放的应该是数组的地址能够指向数组的指针变量。 下⾯代码哪个是数组指针变量
int *p1[10];
int (*p2)[10];思考⼀下p1,p2分别是什么 数组指针变量
1 int (*p)[10];
解释p先和*结合说明p是⼀个指针变量变量然后指着指向的是⼀个⼤⼩为10个整型的数组。所以 p是⼀个指针指向⼀个数组叫数组指针。 这⾥要注意[]的优先级要⾼于*号的所以必须加上来保证p先和*结合。 2.2 数组指针变量怎么初始化 数组指针变量是⽤来存放数组地址的那怎么获得数组的地址呢就是我们之前学习的 数组名 。
int arr[10] {0};
arr;//得到的就是数组的地址
如果要存放个数组的地址就得存放在数组指针变量中如下
int(*p)[10] arr; 我们调试也能看到 arr 和 p 的类型是完全⼀致的。 数组指针类型解析
int (*p) [10] arr;
| | |
| | |
| | p指向数组的元素个数
| p是数组指针变量名
p指向的数组的元素类型 三、⼆维数组传参的本质 四、函数指针变量 五、函数指针数组 六、转移表
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/89223.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!