`
lizaochengwen
  • 浏览: 666641 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

const void *a 与 void *const a 的区别

 
阅读更多
const void *a
这是定义了一个指针a,a可以指向任意类型的值,但它指向的值必须是常量。

在这种情况下,我们不能修改被指向的对象,但可以使指针指向其他对象。

例如:

const void *a;*a=0x123;//是编译通不过的,因为*a中放的是个const值。const值是不能被改变的。

const int  m=1;     const int n=2;

a=&m;    a=&n;//编译可以通过。



void* const  a
这是定义了一个const指针a,a可以指向任意类型的值,但a是指向某个对象的常量指针。

我们不能修改指针中存储的地址,但可以修改指针指向的对象。

例如:

void* const  a;这个定义:*a=0x123;是没问题的,

但是a=(void*)&b;是不行的,因为a是const变量。

如:

int  m=1;     nt n=2;

a=&m;    a=&n;//编译不成功。



可以这么说,const void *a;中const修饰的是*a。在void* const  a中,const 修饰的是a。


原文:http://blog.csdn.net/yinjiabin/article/details/6731352
分享到:
评论

相关推荐

    const用法 const int *a; int * const a;

    - `int const *a const;`:声明了一个指向整型常量的常量指针,这意味着`a`和它所指向的整型数都不能被修改。 2. **指针与常量的结合**: - `const char* pCh;`:`pCh`是一个指向字符串常量的指针,它可以改变...

    const int *a int * const a区别实例

    void func(const int *a) { // a 是一个指向常量的指针 } ``` 这里,func 函数的参数 a 是一个指向常量的指针, garanty 不会被修改。 const 关键字在 C++ 中非常重要,它可以用来修饰变量、指针、函数参数等,使...

    c语言水仙花练习#include<stdio.h>

    水仙花c语言#include #include void main() /*主函数*/ { int num, a,b,c; /* 定义a,b,c为整形函数 */ for(a=1;a;a++) /*a是百位上数字,范围是1~9*/

    qsort使用法和具体举例说明

    int cmp ( const void *a , const void *b ){ return *(char *)a - *(char *)b; } qsort(word,100,sizeof(word[0]),cmp); 3. 对浮点数数组排序 double in[100]; int cmp( const void *a , const void *b ){ ...

    ios socket demo

    ssize_t send(int, const void *, size_t, int) __DARWIN_ALIAS_C(send); // void * 万能指针 // 读取数据 ssize_t recv(int, void *, size_t, int) __DARWIN_ALIAS_C(recv); // 关闭连接 int close(int);

    const 用法

    - **修饰常指针**:`const` 可以修饰指针本身或指针所指向的对象,如 `const int *A;` 或 `int *const A;` - **修饰常引用**:`const` 修饰引用,如 `const double &v;` - **修饰函数参数**:如 `void Fun(const ...

    qsort函数具体介绍

    比较函数的原型是 `int compar(const void *a, const void *b)`,其中: * `a` 和 `b` 是要比较的两个元素 * 返回值是整数,表示两个元素的大小关系 如果返回值小于 0,则认为 `a` 小于 `b`;如果返回值等于 0,则...

    VC++ string_format(const char* format, ...)

    能够按照格式化输出字符串数据,长度不受限制,亲测十几兆都正常。 #include using namespace std;

    C语言中qsort函数用法实例小结

    int cmp ( const void *a , const void *b ) { return *(int *)a - *(int *)b; } qsort(num, 100, sizeof(num[0]), cmp); ``` 2. **对`char`类型数组排序**: 对字符数组排序与整型数组类似,只是比较函数中...

    远程文件系统客户端源码

    long __stdcall RFCFileWrite(void* AFile, const void* ABuffer, long ASize); // 文件定位/清除文件缓存/设置文件末尾 long __stdcall RFCFileSeek(void* AFile, long* AOffset, long AOrigin); long __stdcall ...

    qsort 各种用法

    int cmp_int(const void *a, const void *b) { return *(int *)a - *(int *)b; } int main() { int num[100] = { /* 初始化数组 */ }; qsort(num, 100, sizeof(num[0]), cmp_int); // 此时,num数组按升序排列 ...

    七种qsort排序

    int cmp(const void *a, const void *b) { return *(int *)a - *(int *)b; } ``` 调用`qsort()`函数时,需提供待排序数组、数组元素个数、元素大小及比较函数的指针: ```c int num[100]; qsort(num, 100, sizeof...

    qsort 与sort 的比较

    int cmp(const void *a, const void *b) { return *(int*)a - *(int*)b; } qsort(num, 100, sizeof(num[0]), cmp); ``` 2. 对字符数组排序(与整型相似): ```cpp char word[100]; int cmp(const void *a, const ...

    成员函数用于回调函数

    int __cdecl sort(const void* a, const void* b); }; class Test { public: std::vector&lt;int&gt; mm; void Sort(int (*comp)(const void *,const void *)) { return qsort(mm._Myfirst,mm.size(),sizeof(int),...

    qsort C语言版

    int cmp(const void *a, const void *b) { return *(int *)a - *(int *)b; } qsort(num, 100, sizeof(num[0]), cmp); ``` 这段代码将 `num` 数组按升序排序。 ##### 字符型数组排序 对于字符型数组,排序方式类似...

    qsort总结.pdf快速排序总结qsort总结.pdf快速排序总结

    int cmp(const void *a, const void *b) { return *(int *)a - *(int *)b; // 返回值为负表示a小于b;为零表示相等;为正表示a大于b } qsort(num, 100, sizeof(num[0]), cmp); // 对数组num进行排序 ``` ##### 2....

    七种qsort排序方法

    int cmp(const void *a, const void *b) { return *(int *)a - *(int *)b; } qsort(num, 100, sizeof(num[0]), cmp); ``` 这里的`cmp`函数比较两个整数的值,并根据结果返回整数值,`qsort`会依据这个比较规则进行...

    C语言中memcpy 函数的用法详解

    void* memcpy(void* destination, const void* source, size_t num); void* dest 目标内存 const void* src 源内存 size_t num 字节个数 库中实现的memcpy函数 struct { char name[40]; int age; } person, ...

    qsort函数应用大全

    int cmp(const void *a, const void *b) { return *(int *)a - *(int *)b; } ``` 然后,使用 qsort 函数对整数数组进行排序: ```c int num[100]; qsort(num, 100, sizeof(num[0]), cmp); ``` 二、对字符数组的排序...

Global site tag (gtag.js) - Google Analytics