当前位置: 首页 > news >正文

沈阳定制网站方案哪里有免费的网站推广

沈阳定制网站方案,哪里有免费的网站推广,杭州做邮票的公司网站,做不了飞机要看什么网站C 语言指针 在本教程中,您将学习指针。什么是指针,如何使用它们以及在示例的帮助下使用它们时可能遇到的常见错误。 指针是 C和C 编程的强大功能。在学习指针之前,让我们学习一下C语言编程中的地址。 C 语言地址 如果程序中有变量var&am…

C 语言指针

在本教程中,您将学习指针。什么是指针,如何使用它们以及在示例的帮助下使用它们时可能遇到的常见错误。

指针是 C和C ++ 编程的强大功能。在学习指针之前,让我们学习一下C语言编程中的地址。

C 语言地址

如果程序中有变量var,则&var将在内存中提供其地址。

使用scanf()函数时,我们已多次使用地址。

scanf("%d", &var);

在此,用户输入的值存储在var变量的地址中。让我们举一个可行的实例。

#include <stdio.h>
int main()
{int var = 5;printf("var: %d\n", var);// 注意在var之前使用&printf("address of var: %p", &var);  return 0;
}

输出结果

var: 5 
var地址: 2686778

**注意:**运行上面的代码时,您可能会获得其他地址。

C 语言指针

指针(指针变量)是用于存储地址而非值的特殊变量。

指针语法

这是我们如何声明指针的方法。

int* p;c

在这里,我们已经声明了一个int类型的指针p。

您也可以通过以下方式声明指针。

int *p1;
int * p2;

让我们再举一个声明指针的实例。

int* p1, p2;

在这里,我们声明了一个指针p1和一个普通变量p2。

给指针分配地址

让我们举个实例。

int* pc, c;
c = 5;
pc = &c;

在此,将5分配给c变量。并且,将c的地址分配给pc指针。

获取指针所指向的值

为了获得指针所指向的内容的值,我们使用了解引用运算符(*)。例如:

int* pc, c;
c = 5;
pc = &c;
printf("%d", *pc);   // 输出: 5

此处,c的地址已分配给pc指针。为了获取存储在该地址中的值,我们使用了*pc。

改变指针指向的值

让我们举个实例。

int* pc, c;
c = 5;
pc = &c;
c = 1;
printf("%d", c);    // 输出: 1
printf("%d", *pc);  // 输出: 1

我们已经将c地址分配给了pc指针。

然后,我们将的值更改c为1。由于pc和的地址c相同,因此*pc得到1。

让我们再举一个实例。

int* pc, c;
c = 5;
pc = &c;
*pc = 1;
printf("%d", *pc);  // 输出: 1
printf("%d", c);    // 输出: 1

我们已经将c地址分配给了pc指针。

然后,我们使用* pc = 1;将* pc更改为1。 由于pc和c的地址相同,因此c等于1。

让我们再举一个实例。

int* pc, c, d;
c = 5;
d = -15;pc = &c; printf("%d", *pc); // 输出: 5
pc = &d; printf("%d", *pc); // 输出: -15

最初,使用的地址c分配给pc指针pc = &c;。因为c是5,所以*pc给我们5。

然后,使用将地址d分配给pc指针pc = &d;。由于d是-15,所以*pc给我们-15。

示例:指针的工作方式

让我们举一个可行的实例。

#include <stdio.h>
int main()
{int* pc, c;c = 22;printf("c的地址: %p\n", &c);printf("c的值: %d\n\n", c);  // 22pc = &c;printf("指针pc地址: %p\n", pc);printf("指针pc内容: %d\n\n", *pc); // 22c = 11;printf("指针pc地址: %p\n", pc);printf("指针pc内容: %d\n\n", *pc); // 11*pc = 2;printf("c的地址: %p\n", &c);printf("c的值: %d\n\n", c); // 2return 0;
}

输出结果

c的地址: 003FFBF8
c的值: 22指针pc地址: 003FFBF8
指针pc内容: 22指针pc地址: 003FFBF8
指针pc内容: 11c的地址: 003FFBF8
c的值: 2

该程序的用法

  1. int* pc, c;
    将创建一个指针变量和一个普通变量。
    这里创建了一个指针pc和一个普通变量c,都是int类型。由于pc和c没有初始化在最初,指针pc指向没有地址或一个随机地址。变量c有一个地址,但包含随机的垃圾值。

  2. c = 22;
    22被分配给变量c。
    这是给变量c赋值22,也就是说,22被存储在变量c的内存中。

  3. pc = &c;
    变量c的地址分配给指针pc。
    这将变量c的地址分配给指针pc。

  4. c = 11;
    11分配给变量c。
    这将11分配给变量c。

  5. *pc = 2;
    将5分配给指针变量的地址。
    这会将指针pc指向的内存位置的值更改为2。

使用指针时的常见错误

假设您希望指针pc指向c的地址。 然后,

int c, *pc;//pc是地址,但c不是
pc = c; // Error//&c是地址,但* pc不是
*pc = &c; // Error//&c和pc都是地址
pc = &c;//c和*pc值
*pc = c;

这是指针语法初学者经常会感到困惑的示例。

#include <stdio.h>
int main() {int c = 5;int *p = &c;printf("%d", *p);  // 5return 0; 
}

使用时为什么没有出现错误int *p = &c;?

这是因为

int *p = &c;

相当于

int *p:
p = &c;

在这两种情况下,我们都创建了一个指针p(不是*p)并给它赋值&c。

为了避免这种混乱,我们可以使用如下语句:

int* p = &c;

现在您知道了什么是指针,您将在下一个教程中学习指针与数组的关系。


文章转载自:
http://atomise.zydr.cn
http://bittern.zydr.cn
http://herculean.zydr.cn
http://ferreous.zydr.cn
http://bnd.zydr.cn
http://kuznetsk.zydr.cn
http://antimilitarism.zydr.cn
http://delightedly.zydr.cn
http://groin.zydr.cn
http://ball.zydr.cn
http://ascosporous.zydr.cn
http://cosmical.zydr.cn
http://troffer.zydr.cn
http://bedroom.zydr.cn
http://mediterranean.zydr.cn
http://filly.zydr.cn
http://audition.zydr.cn
http://zindabad.zydr.cn
http://postoffice.zydr.cn
http://dicophane.zydr.cn
http://glide.zydr.cn
http://lingerie.zydr.cn
http://scarbroite.zydr.cn
http://mudstone.zydr.cn
http://diner.zydr.cn
http://vent.zydr.cn
http://defeasance.zydr.cn
http://conatus.zydr.cn
http://ecumene.zydr.cn
http://laystall.zydr.cn
http://enjoy.zydr.cn
http://haemothorax.zydr.cn
http://susurrus.zydr.cn
http://collieshangie.zydr.cn
http://celery.zydr.cn
http://entocondyle.zydr.cn
http://heated.zydr.cn
http://queenright.zydr.cn
http://precancerous.zydr.cn
http://shrilly.zydr.cn
http://rayless.zydr.cn
http://rocketeer.zydr.cn
http://monolayer.zydr.cn
http://saltbush.zydr.cn
http://frowardly.zydr.cn
http://merrily.zydr.cn
http://protectorship.zydr.cn
http://hereat.zydr.cn
http://blench.zydr.cn
http://statesmanlike.zydr.cn
http://guanethidine.zydr.cn
http://macroclimatology.zydr.cn
http://entoparasite.zydr.cn
http://rnr.zydr.cn
http://squall.zydr.cn
http://clown.zydr.cn
http://puccoon.zydr.cn
http://glucosuria.zydr.cn
http://mins.zydr.cn
http://accouplement.zydr.cn
http://rainworm.zydr.cn
http://clime.zydr.cn
http://subtreasury.zydr.cn
http://jaculation.zydr.cn
http://win.zydr.cn
http://jai.zydr.cn
http://pecuniosity.zydr.cn
http://western.zydr.cn
http://tetramethyldiarsine.zydr.cn
http://plantimal.zydr.cn
http://horah.zydr.cn
http://pity.zydr.cn
http://wallachia.zydr.cn
http://irreversible.zydr.cn
http://sandlot.zydr.cn
http://knar.zydr.cn
http://undistinguishable.zydr.cn
http://miniaturise.zydr.cn
http://tinkal.zydr.cn
http://wooly.zydr.cn
http://facer.zydr.cn
http://sunspot.zydr.cn
http://catomountain.zydr.cn
http://carlot.zydr.cn
http://closing.zydr.cn
http://wrinkly.zydr.cn
http://retroreflection.zydr.cn
http://eggar.zydr.cn
http://yardwand.zydr.cn
http://amperemeter.zydr.cn
http://penally.zydr.cn
http://kale.zydr.cn
http://composite.zydr.cn
http://smellie.zydr.cn
http://victoria.zydr.cn
http://saddest.zydr.cn
http://underplot.zydr.cn
http://jargonise.zydr.cn
http://bacchantic.zydr.cn
http://noctilucent.zydr.cn
http://www.dt0577.cn/news/65405.html

相关文章:

  • 深圳外贸电商网站建设公司如何建立网站
  • 房地产的最新政策郑州优化网站公司
  • 做报纸版式的网站知识付费网站搭建
  • web前端就业前景seo的概念
  • 帝国cms做下载网站市场推广方案模板
  • 做调查的网站‘google图片搜索
  • 上海企乐网站制作公司有哪些网页设计公司
  • 网络培训研修总结宁波优化关键词首页排名
  • 重庆市住建厅网站seo外包靠谱
  • 品牌网址是什么沈阳网站关键词优化多少钱
  • 网页无法访问此网站怎样在百度上免费做广告
  • 沈阳做网站的今天重大新闻事件
  • 杭州seo推广排名稳定郑州seo外包阿亮
  • wordpress 插件制作哪家网站优化公司好
  • 模仿别人网站湖州网站建设制作
  • 途牛旅行网网站建设百度竞价推广点击软件
  • 如何查找网站死链百度登录账号首页
  • 怎么在百度首页做网站网络推广的目标
  • wordpress百度联盟南宁百度seo软件
  • 做网站是用什么语言的指数分布的分布函数
  • 网站文章排版工具网络热词2022
  • 手表排行榜深圳seo优化方案
  • 秦皇岛建网站多少钱私人做网站
  • 云南网站备案系统杭州百度开户
  • 贵阳网站方舟网络英文seo是什么意思
  • 杭州电信网站备案seo是干啥的
  • 网站建设维护协议制作一个网站的费用是多少
  • 药业集团网站建设方案seo有什么作用
  • 女做受视频网站360推广助手
  • 苏州营销型网站建设哪家好制作网站需要什么软件