你好, 欢迎回来｡
在这堂课中, 我想提供一个演示或解决方案,
我们以前的挑战, 让你熟悉指针语法,
指针的概念, 分配一个地址给一个指针, 然后显示一些输出的指针｡
让我们打开代码块, 我们将创建一个新的项目,
一个新的c项目, 它将被称为指针基础, 因为它将执行指针的基础｡
所以我们知道如何做到这一切｡
我们将选择控制台应用程序, 确保我们有c, 并将此指针称为基础｡
指针的概念非常非常重要｡
所以我们要慢慢开始, 从那里开始｡
我们开始吧｡ 这是我们的主菜单｡
现在我们要做的就是创建一个整型变量, 然后创建一个指针变量｡
我们想初始化这两个｡
首先我要创建一个整型变量,
命名为number或num.
我把它初始化为150｡
若要创建指针变量, 它必须是同一类型｡
要创建一个指针, 你要做的就是输入数据类型, 然后在声明中输入星号,
然后我们就把这个pnum称为指针编号.
通常, 您希望以p前缀作为指针变量的开头｡
最好在创建指针时将其初始化为null｡
Null是一个特殊的关键字, 表示指针不指向任何对象｡
一旦我们初始化了两个变量, 我们的num整数和num整数指针, 我们就需要给指针赋值｡
因为现在我们的指针并没有指向内存中的任何东西｡
你要确保无论你把指针分配给它什么,
它都有内存位置, 分配的内存｡
所以在这个例子中,
如果我们给它赋值num, num是第6行的一个整数, 内存分配给了它｡
C会自动为任何变量声明分配内存｡
甚至第7行上的这个指针也分配了仅用于存储指针的存储器｡
这并不一定意味着它为它所指向的内容分配了内存｡
所以要给pnum加上符号, 一个地址的值,
我们所要做的就是说pnum等于&号, 它是运算符的地址, 我们要给它赋值, 就是num的地址｡
Num已经分配了一个内存, 我们声明了它｡
所以第9行只是把num的地址赋给一个指针｡
就这么简单｡
当你创建一个指针并给它分配一个地址时, 你也可以创建你自己的动态内存并分配它｡
但那是另一个练习｡
在本例中, 我们已经创建了变量｡ 我们将指向该变量的值｡
我们需要分配num的地址｡
现在, 在我们打印出来之后, 我们已经完成了任务, 我们已经初始化了一切｡
现在我们只想打印出一些信息｡
所以我们要使用printf, 首先我要打印出pnum地址的值.
现在, pnum值是什么地址,
但pnum地址｡ 这里我们实际上可以说指针的地址, 所以我们会说p｡
然后我们要做的就是在这里输入, 我们要输入指针的地址｡
所以这里我们说pnum的地址｡
这会给予我们什么呢, 这会给我们分配内存的指针的地址｡
它不是指针的值｡ 指针的值也是一个地址, 也就是num的地址.
所以这里我们先打印出num｡
所以这里我们只打印出num地址｡
同样, 我们要打印出一个地址, 比如percent p｡
然后我们要说num的地址｡
并且num的地址也应该与pnum的值匹配｡
pnum的地址是不同的, 因为它是内存中的指针｡
所以我们要输出pnum的值,
或者应该说是pnum的地址｡
然后我们还要打印出pnum的值｡
变量, 这也是一个地址, 这就是pnum.
最后我们要显示的是, pnum指向的值｡
所以pnum指向的值｡
这实际上就是它所指向的类型, 是一个整数｡
这就是d的百分比｡
让我们添加一些换行符, 这样我们就可以看到它了｡
它实际上指向的是, 你得到这个值的方式, 是间接操作符｡
所以你先写星号, 然后写指针名｡
它会告诉你这个值指向什么, 应该是150｡
在第11行重申一遍,
我们打印出num的地址｡
这是一个数字或者十六进制数｡
然后在第12行, 我们输出pnum的地址, 它是在第7行分配的,
因为你必须把pnum指针存储在某个地方｡
然后我们打印出指针的值, 它就是num的地址｡
当我们打印出pnum的地址时, 我们必须使用&符号｡
然后我们打印出pnum指向的值, 它使用间接操作符进行解引用｡
现在,
让我们继续构建并运行它, 我们应该会看到所有这些值｡
所以内存中的num地址就是这个数字0060FF0C｡
pnum的地址将是不同的,
0060FF08｡
pnum的值, 即num的地址, 应与第一行匹配,
并执行FFOC｡
然后pnum指向的值是150｡
所以一个指针可以有三个值｡
它的地址, 指针的值,
指针是另一个地址, 然后是那个地址所指向的值｡
再次强调, &符号总是给出内存中的地址｡
Pnum包含地址｡
你只要说出指针的名字就可以打印出来｡
然后要得到它指向的值, 你可以使用间接运算符, 星号,
它会给予你150这个值.
这些是指针的基础知识, 让你熟悉语法｡
什么时候使用运算符的地址,
什么时候使用间接运算符, 然后试着解释一下指针的概念,
以及指针如何包含地址的值, 指针的值就是地址.
因此,
请仔细研究一下, 了解一下这个语法, 指针是非常重要的概念｡ -谢谢—谢谢