地址
故里草木深
这个作者很懒,什么都没留下…
展开
-
C语言对于指针p,*p,&p的理解
定义一个整形指针p:int *p;p:p是一个变量,但它与普通整型变量不同。普通整型变量一般用来保存一个数值,p 保存的也是一个数值,但这个数值代表地址,这个地址可以改变。*p:*p是取p对应的地址里的数据 。&p:因为p是一个变量,所以就要有内存空间来保存这个变量,这就是&p,&符号代表取地址。我们进行如下操作:#include "stdio.h"i...原创 2020-02-11 11:52:36 · 1787 阅读 · 2 评论 -
C语言读取指定地址的内容,或将值写入到指定地址
在汇编语言中,可以很轻松地将立即数或变量写入到指定地址,或从指定地址读取数据,但是在C语言中,如何实现这一功能?#include "stdio.h"int main(){ int *p;//定义一个整形指针 p = (int *)0x0019FF3C;//将常量0x0019FF3C强制转化为整形地址,用p指向它 *p = 1234;//向该地址写入数据 printf("%d\n...原创 2020-02-11 10:01:50 · 30962 阅读 · 6 评论 -
C语言 对于数组名和指针的理解
在C语言中,数组名保存的是数组的地址,也就是数组的第一个元素的地址,其值是一个常量。虽然保存的是一个地址,但是数组名不是指针,指针是用来保存地址的一个变量,其保存的地址可以改变,你可以对指针进行++,–,+=,-=,赋值等操作,但是不能对数组名进行这些操作。在下面这个程序中,将数组的地址打印输出:#include "stdio.h"int main(){ int a[] = {1,4,...原创 2020-02-10 18:13:53 · 480 阅读 · 0 评论