8.17学习总结

这篇博客探讨了C++中的指针概念,包括指针的高级应用,如比较字符串常量的内存地址,指针数组和数组指针的区别。文章还介绍了如何传递二维数组给函数,以及函数指针和函数指针数组的使用。通过实例展示了如何用函数指针作为参数来实现特定操作。最后提到了对面噪音的问题,但这是非技术性的内容。
摘要由CSDN通过智能技术生成

今天吧,学了点指针,有点晕,现在回顾一下。

1.指针的高级应用,

int main ()
{
    char str1 [] = "hello bit." ;
    char str2 [] = "hello bit." ;
    char * str3 = "hello bit." ;
    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 ;
因为 用相同的常量字符串去初始 化不同的数组的时候就会开辟出不同的内存块,所以1跟2不同,3跟4都是指向同一个内存块。
2.指针数组。
int* p[10]
3.数组指针
int(*p)[10]
指向数组的指针,可以存放数组的地址。
注意书写的格式、、、、、、
void print(int (*p)[4], int x, int y)
{
    for (int i = 0; i < x; i++)
    {
        for (int j = 0; j < y; j++)
        {
            printf("%d ", p[i][j]);
        }
        printf("\n");
    }
}
int main()
{
    int arr[3][4] = { {1,2,3},{4,5,6,7,} };
    print(arr, 3, 4);
    return 0;
}
 
这里格式最容易搞混。
3.二级数组传参:有很多种形式,
4.函数指针
void test ()
{
printf ( "hehe\n" );
}
int main ()
{
printf ( "%p\n" , test );
printf ( "%p\n" , & test );
return 0 ;
}
结果一样,  说明----&函数名跟函数名一样,都是函数的地址。
格式:
int (*p)(int int ) =add;
5.函数指针数组。
int(*p[10])(int int);
函数指针数组的应用----转移表 (有空可以写一下;
然后今天就到这里了,tmd对面有一堆傻逼吵死了;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值