C语言|指针总结

指针是什么

在计算机科学中,指针(Pointer)是编程语言中的一个对象,利用地址,它的值直接指向(points to)存在电 脑存储器中另一个地方的值。由于通过地址能找到所需的变量单元,可以说,地址指向该变量单元。因此,将 地址形象化的称为“指针”。意思是通过它能找到以它为地址的内存单元。

指针的分类

整型指针:int * p
字符指针:char * p
指针数组:int *p[5]
数组指针:int (*p)[5]
函数指针:void (*p)()
函数指针数组:void (*p[5])()

函数数组指针:void (*(*p)[5])()

整型指针:int * p

#include <stdio.h>
int main() 
{
    int a = 10;//在内存中开辟一块空间
    int *p = &a;   
    return 0; } 

先声明变量a,我为变量a开辟空间,用&(取地址符)得到a变量在内存中地址,并让指针p指向这个地址。

int * p一次访问四个(int)字节个内存空间

字符指针:char * p

  1. 第一种使用方法,指向一个字符。该指针所存储的内容为该字符在内存中的地址。
#include<stdio.h>
int main()
{
     char ch = 'w';   
     char *p = &ch;
     *p = 'w'
     return 0;
}
  1. 第二种使用方法,指向字符串首字母的地址。若需要打印一串字符串,则只需保存其字符串首地址,依次打印,直到遇见‘\0’结束。
#include<stdio.h>
int main()
 {    
     char* p = "hello world";
     printf("%s\n", p);
     return 0; } 

字符指针在内存中一次访问一个(char)字节个内存空间

指针数组(int *p[5])与数组指针(int (*p)[5])

数组为相同类型数据类型的变量的集合,指针数组顾名思义为保存相同类型指针类型变量的集合。
数组指针,同样顾名思义,先为一个指针,该指针所指向的是一个数组。

  • int * p[5]:p与[5]结合先为一个数组,数组中所存储的变量类型为int *
  • int (*p)[5]:p与*结合,声明p为一个指针类型,该指针指向一个为int类型,长度为5的数组。该指针一次所访问的空间,为声明的数组大小的空间

特别注意指针数组与数组指针的区别

函数指针:void (*p)()

首先p和*结合证明为一个指针,在与()结合,表明指向为一个函数,void表明函数返回类型

函数指针数组:void (*p[5])()

首先p与[5]结合,表明为一个数组,在与*结合,表明为一个指针,指针类型为一个返回值为void的函数

函数数组指针:void (*(*p)[5])()

指针函数数组为指向函数数组的指针
p先与*结合表明为一个指针,指针所指的为一个数组长度为5,返回值为void的函数数组

内容概要:该研究通过在黑龙江省某示范村进行24小时实地测试,比较了燃煤炉具与自动/手动进料生物质炉具的污染物排放特征。结果显示,生物质炉具相比燃煤炉具显著降低了PM2.5、CO和SO2的排放(自动进料分别降低41.2%、54.3%、40.0%;手动进料降低35.3%、22.1%、20.0%),但NOx排放未降低甚至有所增加。研究还发现,经济性和便利性是影响生物质炉具推广的重要因素。该研究不仅提供了实际排放数据支持,还通过Python代码详细复现了排放特征比较、减排效果计算和结果可视化,进一步探讨了燃料性质、动态排放特征、碳平衡计算以及政策建议。 适合人群:从事环境科学研究的学者、政府环保部门工作人员、能源政策制定者、关注农村能源转型的社会人士。 使用场景及目标:①评估生物质炉具在农村地区的推广潜力;②为政策制定者提供科学依据,优化补贴政策;③帮助研究人员深入了解生物质炉具的排放特征和技术改进方向;④为企业研发更高效的生物质炉具提供参考。 其他说明:该研究通过大量数据分析和模拟,揭示了生物质炉具在实际应用中的优点和挑战,特别是NOx排放增加的问题。研究还提出了多项具体的技术改进方向和政策建议,如优化进料方式、提高热效率、建设本地颗粒厂等,为生物质炉具的广泛推广提供了可行路径。此外,研究还开发了一个智能政策建议生成系统,可以根据不同地区的特征定制化生成政策建议,为农村能源转型提供了有力支持。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值