C语言中下标与指针的转换以及指向指针的指针的例子_Java教程-查字典教程网
C语言中下标与指针的转换以及指向指针的指针的例子
C语言中下标与指针的转换以及指向指针的指针的例子
发布时间:2016-12-28 来源:查字典编辑
摘要:下标到指针之间和转换以下的程序做了什么。#includeintmain(){inta[3][3]={{0,1,2},{3,4,5},{6,7...

下标到指针之间和转换

以下的程序做了什么。

#include <stdio.h> int main() { int a[3][3] = {{0, 1, 2}, {3, 4, 5}, {6, 7, 8}}; int i = 0; int j = 0; for(i = 0; i<3; i++) { for(j=0; j<3; j++) { printf("%dn", *(*(a+i)+j)); } } }

打印了数组中的每个元素:

指向指针的指针

#include <stdio.h> int main() { int a = 1; int* p = NULL; int** pp = NULL; pp = &p; *pp = &a;// ==> p = &a; printf("%d", **pp); return 0; }

使用实例:重置动态空间大小(类似于在函数中修改入参)

#include <stdio.h> int reset(char**p, int size, int new_size) { int ret = 1; int i = 0; int len = 0; char* pt = NULL; char* tmp = NULL; char* pp = *p; if( (p != NULL) && (new_size > 0)) { pt = (char*)malloc(new_size); tmp = pt; len = (size < new_size) ? size : new_size; for( i=0; i<len; i++) { *tmp++ = *pp++; } free(*p); *p = pt; } return ret; } int main() { char* p = (char*)malloc(5); printf("%0Xn", p); if( reset(&p, 5, 3) ) { printf("%0Xn", p); } return 0;

相关阅读
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  • 最新Java学习
    热门Java学习
    编程开发子分类