
发表日期: 2021-04-24 10:46:45 浏览次数:144
无锡小程序制作【无锡企业邮箱】无锡网站外包、无锡微信商城开发、无锡网店美工、无锡淘宝设计
无锡(Wuxi),简称“锡”,古称梁溪、金匮,是江苏省地级市,国务院批复确定的中国长江三角洲的中心城市之一、也是重要的风景旅游城市 [1] ,截至2020年,全市下辖5个区、代管2个县级市,总面积4627.47平方千米,建成区面积552.13平方千米, [2] 截至2019年末,无锡市常住人口659.15万人,其中城镇常住人口508.2万人,常住人口城镇化率77.10%。 [3]
无锡地处中国华东地区,位于江苏省南部,地处长江三角洲平原,是扬子江城市群重要组成部分,北倚长江、南滨太湖,被誉为“太湖明珠”,京杭大运河从无锡穿过;境内以平原为主,星散分布着低山、残丘;属亚热带湿润季风气候区,四季分明,热量充足。
无锡是国家历史文化名城 [4] ,自古就是鱼米之乡,素有布码头、钱码头、窑码头、丝都、米市之称。无锡是中国民族工业和乡镇工业的摇篮,是苏南模式的发祥地,也是联勤保障部队无锡联勤保障中心驻地 [5] 。无锡有鼋头渚、灵山大佛、无锡中视影视基地等景点。
2017年11月,复查确认继续保留全国文明城市荣誉称号。 [6] 2018年12月,被评为2018中国大陆最佳地级城市第3名,2018中国创新力最强的30个城市之一,2018中国最佳旅游目的地城市第17名。2019年8月,中国海关总署主办的《中国海关》杂志公布了2018年“中国外贸百强城市”排名,无锡排名第11。
在C语言的学习中,指针被认为是最大的难点。
在学习指针时,我们经常会听到下面这样的建议。
“只要理解了计算机的内存和地址的概念,指针什么的就不在话下了。”
“因为C是低级语言,所以先学习汇编语言比较好。”
的确,在理解C指针时,如果事先对内存和地址的概念有所了解,就会快很多(至于是否需要学习汇编语言,我表示怀疑)。但是,仅懂得内存和地址的概念,是无法掌握指针的。理解内存和地址的概念可能是理解指针的必要条件,但并不是充分条件。这只是“万里长征”的第一步。
观察一下初学者实际使用C指针的过程,就会发现很多下面这样的问题。
用int *a;声明指针变量……到这里还挺像样的,可是在将这个指针变量当作指针使用时,依然悲剧地写成了*a。
写出了int &a;这样的声明(←拜托,这又不是C++)。
什么是“指向int的指针”?指针不就是地址吗?怎么还有“指向int的指针”“指向char的指针”,难道它们还有什么不同吗?”
当学习到“给指针加1,指针会前进12个字节或4个字节”时,可能会有这样的疑问:“指针不就是地址吗?在这种情况下,难道指针不应该是前进1个字节吗?”
“对于scanf(),在使用%d的情况下,需要在变量前加上&才能传递参数。可是,为什么在使用%s时就可以不加&呢?”
当学习到将数组名赋给指针时,将数组和指针混为一谈,犯下“把未分配内存空间的指针当作数组访问”或者“试图把指针赋给数组名”这样的错误。
1这里所谓的“前进”,严格来说是指指针向高地址方向移动。 ——译者注
出现以上混乱情形,并不是因为没有理解“指针就是地址”,真正的原因是:
C语言奇葩的声明语法
数组与指针之间微妙的兼容性
看到我说C语言的声明语法奇葩,估计有些读者会不明所以。那么,大家是否有过如下疑问呢?
在C语言的声明中,[]的优先级比*高,所以char *s[10];这样的声明表示“指向char的指针的数组”——弄反了吧?
搞不明白double (*p)[3];和void (*func)(int a);这样的声明到底应该怎样阅读。
int *a;表示把a声明为“指向int的指针”,但表达式中的*却也可以对指针进行解引用。明明是一样的符号,为啥意思却相反?
int *a和int a[]在什么情况下可以互换?
空的[]可以在什么地方使用,代表的又是什么意思?
本书就是为了对这样的疑问给出解答而编写的。
坦白地说,我也是在使用C语言好几年之后,才真正明白声明的语法的。
我不愿意承认自己技不如人,所以总是认为实际上只有极少的人能够精通C语言中的声明。毕竟,我自己在掌握C语言声明之前,已经勤勤恳恳地码了好几年代码了。即便是自认为“C语言很简单嘛,指针我也已经完全掌握了”的各位看官,其实也可能只是知其一不知其二。
例如,你知道下面这些事实吗?
在引用数组中的元素时,a[i]中的[]其实跟数组没半点关系。
C语言中不存在多维数组。
如果你在书店看到这本书,翻看几页后心想“什么呀?简直是奇谈怪论!”而默默地又把书放回书架了,那么你恰恰需要阅读本书。
因为C语言是模仿汇编语言的低级语言,所以要想理解指针,就必须理解内存和地址的概念——当听到这种说法时,你可能会认为:指针是C语言所特有的、底层而邪恶的功能。

服务热线
顶部
备案号: 苏ICP备11067224号
CopyRight © 2011 书生商友信息科技 All Right Reserved
24小时服务热线:400-111-6878 E-MAIL:1120768800@qq.com QQ:1120768800
网址: http://www.768800.com 网站建设:上往建站
关键词: 网站建设| 域名邮箱| 服务器空间| 网站推广| 上往建站| 网站制作| 网站设计| 域名注册| 网络营销| 网站维护|
企业邮箱| 虚拟主机| 网络建站| 网站服务| 网页设计| 网店美工设计| 网站定制| 企业建站| 网站设计制作| 网页制作公司|
400电话办理| 书生商友软件| 葬花网| 调温纤维| 海洋馆运营维护| 北京保安公司| 殡仪馆服务| 殡葬服务| 苏州殡葬一条龙| 朝阳殡葬| 苏州殡葬服务|
欢迎您免费咨询,请填写以下信息,我们收到后会尽快与您联系
服务热线:400-111-6878