RJF*_*ner 24
指向整数值的指针
int* i
Run Code Online (Sandbox Code Playgroud)
指向整数值的指针
int** i
Run Code Online (Sandbox Code Playgroud)
(即,在第二种情况下,您将需要两个dereferrence来访问整数的值)
Kla*_*aim 10
int* i:i是指向类型对象的指针intint** i:i是指向类型对象的指针的指针intint*** i:i是指向指向类型对象的指针的指针intint**** i:i是指向指向类型对象的指针的指针的指针int假设你是一名老师,必须给你的一个学生做笔记。
int note;
Run Code Online (Sandbox Code Playgroud)
嗯……我是说全班
int *class_note; /* class_note[0]: note for Adam; class_note[1]: note for Brian; ... */
Run Code Online (Sandbox Code Playgroud)
嗯……别忘了你有几门课
int **classes_notes; /* classes_notes[0][2]: note for Charles in class 0; ... */
Run Code Online (Sandbox Code Playgroud)
而且,你还在几家机构任教
int ***intitute_note; /* institute_note[1][1][1]: note for David in class 1 of institute 1 */
Run Code Online (Sandbox Code Playgroud)
等等等等...
我不认为这是opencv特有的.
int *i声明指向int的指针.因此i存储一个内存地址,C期望该内存地址的内容包含一个int.
int **i正在声明一个指针......指针.到一个int.因此i包含一个地址,并且在该内存地址处,C期望看到另一个指针.那么,第二个内存地址应该保持一个int.
请注意,在声明指向int的指针时,不会分配实际的int.因此,有效说int *i = 23,"我有一个变量,我希望它指向内存地址23,它将包含一个int." 但是如果你试图实际读取或写入内存地址23,你可能会发生段错误,因为你的程序没有"拥有"那块RAM.*i = 100会段错的.(解决方案是使用malloc().或者你可以使它指向一个现有的变量,如int j = 5; int *i = &j)
| 归档时间: |
|
| 查看次数: |
32285 次 |
| 最近记录: |