指针与地址
2008-01-15 11:54
155 查看
第一种:
通过地址操作符取变量(也包括结构体变量)的地址
char c="a", *ptr_char;
ptr_char=&c;
第二种:
数组,不带方括号的数组名也等效于数组中的一个元素的地址,即数组名也可以看作是一个指针
char myname[31], *ptr;
ptr=myname;
or ptr=&myname[0];
第三种:
动态分配的一块内存,这时往往有类型强制转换,但应当注意内存不够时,可能返回一个空(NULL)指针。
struct complex {double real, imag;};
struct complex *ptr;
ptr=(struct complex *)malloc(sizeof(struct complex));
第四种:
函数,与数组名一样,函数名一个可以当作一个地址,可以把函数名付给一个指向函数的指针。函数名后面跟一个带圆括号的的参数意味计算函数的值,但仅有一个函数名则意味指向函数的指针。
double (*fx)()
double quad_poly(double);
fx=quad_poly;
通过地址操作符取变量(也包括结构体变量)的地址
char c="a", *ptr_char;
ptr_char=&c;
第二种:
数组,不带方括号的数组名也等效于数组中的一个元素的地址,即数组名也可以看作是一个指针
char myname[31], *ptr;
ptr=myname;
or ptr=&myname[0];
第三种:
动态分配的一块内存,这时往往有类型强制转换,但应当注意内存不够时,可能返回一个空(NULL)指针。
struct complex {double real, imag;};
struct complex *ptr;
ptr=(struct complex *)malloc(sizeof(struct complex));
第四种:
函数,与数组名一样,函数名一个可以当作一个地址,可以把函数名付给一个指向函数的指针。函数名后面跟一个带圆括号的的参数意味计算函数的值,但仅有一个函数名则意味指向函数的指针。
double (*fx)()
double quad_poly(double);
fx=quad_poly;
相关文章推荐
- (六)指针的应用---址传递(实则为地址的值传递)
- 地址、指针与动态内存分配
- 【c语言】编写一个函数new,对n个字符开辟连续的存储空间,此函数应返回一个指针(地址),指向字符串开始的空间
- C和C++中指针与地址的区别
- JavaScript中指针和地址理解
- [C语言]指针、地址、引用等的学习
- 利用指针地址偏移打印一维数组
- C++中不同指针指向同一个字符串,然而地址相同
- C/C++中关于地址、指针和引用变量的学习笔记(四) : 函数
- 指针剖析,地址关系 (二) 数组与指针、数组名的关系
- C++对象指针比较比较的并不是地址值
- 指针测试之函数中变量地址对齐情况
- 指针与地址
- 指针到底能不能修改其指向的常量字符串?&向NULL地址copy数据
- 指针指向数组并指定数组首地址的一种方法
- List 使用注意: List的Add(data)。 data 地址指针未变实现的是覆盖.
- strcmp函数只能对字符指针(变化的地址)或数组名(固定的地址)进行比较asc2码
- 指针 以及取地址
- 基本数据类型的表现形式(地址,指针,引用)
- C语言学习篇-8地址与指针