每周小题-数组与指针
- 2019 年 11 月 28 日
- 筆記
来源:公众号【编程珠玑】
作者:守望先生
ID:shouwangxiansheng
数组与指针
下面代码的输出结果是什么?
//来源:公众号【编程珠玑】 #include<stdio.h> int main(void) { int a[5] = {1,2,3,4,5}; int *ptr = (int *)(&a+1); printf(“%d,%dn”,*(a+1),*(ptr-1)); }
涉及知识点可阅读《C语言入坑指南-数组之谜》
传值与传指针
下面的代码试图通过getMemory函数获取申请的内存,有什么问题?该如何修改?
void getMemery(int *p)//公众号:编程珠玑 { /*申请1024个int大小*/ p = malloc(sizeof(int)*1024); if(NULL == p) { printf("malloc failedn"); p = NULL; } }
相关知识参考《函数参数的传值和传指针有什么区别?》
注意
- 以上写法实际中不应该出现
- 认真对待编译器的警告