`
wx1569488408
  • 浏览: 75144 次
文章分类
社区版块
存档分类
最新评论

C语言双重指针初始化

 
阅读更多
/* 双重指针初始化 */

#include <stdio.h>
#include <stdlib.h>
#include <malloc.h>

int main()
{
	int m = 5;/*5行*/
	int n = 6;/*6列*/

	/* 初始化 */
	int **p;
	p = (int **)malloc(m * sizeof(int *));

	int i, j;
	for (i = 0; i < m; i++)
	{
		p[i] = (int *)malloc(n * sizeof(int));
	}

	/* 赋值 */
	for (i = 0; i < m; i++)
	{
		for (j = 0; j < n; j++)
		{
			p[i][j] = i + j;
		}
	}

	/* 输出 */
	for (i = 0; i < m; i++)
	{
		for (j = 0; j < n; j++)
		{
			printf("%5d", p[i][j]);
		}

		printf("\n");
	}

	return 0;
}

输出结果

120053_d0xZ_1461588.png

转载于:https://my.oschina.net/walkfaraway/blog/908774

分享到:
评论

相关推荐

    C语言指针学习总结 简单全面

    * 野指针:指针没有被初始化或被销毁的指针。 * 悬空指针:指针指向的内存已经被销毁的指针。 * 双重释放:指针释放了多次的指针。 这些问题如果不被注意,可能会导致程序崩溃或数据泄露。 指针是 C 语言中一个...

    C语言进阶(嵌入式高级C语言编程)(第八讲)

    - 避免未初始化的变量:确保在使用变量之前已经正确初始化,避免引入不可预测的值。 - 错误处理:在可能出现错误的地方,如文件操作、内存分配等,应提供适当的错误处理机制,而不是简单地忽略错误返回。 2. 内存...

    C语言内存精讲.rar

    静态变量则在第一次声明时初始化,之后每次调用都会保持上一次的值。 4. **内存对齐**:C语言中的内存对齐是为了优化数据访问效率,确保数据在内存中的位置符合特定的规则。了解并掌握对齐规则,可以避免不必要的...

    经典C语言教程(很完整)

    教程会解释指针的概念、声明、初始化、指针运算,以及通过指针进行数组和函数操作。 6. **结构体与联合体**:这些是C语言的复合数据类型,用于组合不同类型的数据。结构体可以用于表示复杂的数据结构,联合体则允许...

    基于C语言编写的2048游戏

    初始化时,棋盘通常会被清零,然后随机在两个空格中放入起始数字(通常是2或4)。 游戏的主要操作包括上、下、左、右四个方向的滑动。每一步操作时,需要遍历整个棋盘,检查每一行或每一列。如果相邻的两个相同数字...

    课件_C语言_

    4. 指针的使用,如声明、初始化、解引用,以及指针和数组、函数的结合使用。 5. 错误处理和调试技巧,帮助初学者识别并解决常见问题。 通过这些课程,新手能够逐步掌握C语言的核心概念,提高编程技能,并为后续学习...

    二级C语言上级题库

    - 变量的初始化:例如`max=a[0][0]`用于将数组的第一个元素赋值给变量`max`。 2. **循环与控制结构** - `for`循环结构用于重复执行一段代码,如`for(i=0;i;i++)`,这个循环会在`i`从0到1的过程中执行。 - `while...

    《C语言学习辅导》数组-21

    通过上述实验和理论题,学习者可以深入理解C语言中数组的基本概念,掌握如何声明、初始化、访问数组,以及如何利用指针高效地操作数组,特别是对于一维和二维数组的应用。这些知识是编写复杂C程序的基础,对于后续...

    试析C语言常见错误.pdf

    超出数组边界访问会导致不可预测的行为,指针未初始化或误用可能导致空指针引用。在使用数组和指针时,应确保索引在合法范围内,指针在使用前已经正确赋值,且避免指针悬空。 五、逻辑错误 逻辑错误是最难以发现的...

    c语言坑爹大冒险.zip

    学习时需要注意指针的声明、初始化、解引用以及动态内存管理。 2. **数组与指针的关系** 在C语言中,数组名实际上是一个指向其首元素的指针。这可能导致混淆,比如数组下标和指针偏移的混淆。理解这种关系对避免...

    C语言 数组

    在C语言中,数组是一种非常基础且重要的...以上就是C语言中数组相关的知识点,包括数组的声明、初始化、赋值、遍历、输入输出、多维数组以及数组在函数中的使用等。理解并熟练掌握这些概念对于编写C语言程序至关重要。

    c语言段错误及调试总结.docx

    1. 指针错误:未初始化的指针、空指针解引用、野指针(指针指向未知的内存地址)等都会导致段错误。例如,当一个指针被声明但未赋值,然后用于访问内存时,可能会触发段错误。 2. 数组越界:访问数组时超出其边界,...

    二级C语言上机南开100题(word版)

    以上是关于“二级C语言上机南开100题”中涉及的主要知识点,涵盖数组、函数、条件判断、循环、指针、内存操作、数学运算、字符串处理、算法设计以及变量的声明和初始化等多个方面,这些都是学习C语言时需要掌握的...

    MISRA-C-2004.zip_C语言_MISRA_安全编程规范

    3. **指针操作**:限制了空指针的使用,禁止对未初始化的指针进行操作,以减少悬挂指针和野指针的风险。 4. **数组与字符串处理**:要求避免数组越界访问,提倡使用安全的字符串函数,如`strncpy`代替`strcpy`,以...

    linux c语言错误处理

    例如,始终初始化变量,避免未定义的行为;使用const限定不希望修改的变量;在使用数组和指针时,确保边界检查;遵循编码规范,提高代码可读性。 总结,Linux环境下的C语言编程,错误处理是保证程序稳定性和可靠性...

    C语言经典程序

    程序通过双重循环生成这个三角形,初始化第一行和第一列的元素为1,然后逐行填充剩余元素。 这些经典程序是C语言学习者的基石,它们涵盖了基本的编程结构,如循环、条件判断,以及数组、指针等核心概念。通过理解和...

    计算机二级C语言题库找题目录.pdf

    p=p-&gt;___2___`,初始化变量并移动指针进行遍历。 10. 字符串操作:`s+= p-&gt;___1___`,可能是在字符串末尾添加某个字符或子串。 11. 函数重载:`___1___ fun(STU *std , char *num)`,根据不同的参数类型定义不同...

    二计算机二级C语言南开题.pdf

    函数内部使用了双重循环,第一层循环用于初始化可能的除数,第二层循环检查x是否能被找到的除数整除。 4. 字符串处理与switch-case语句:第四题要求统计字符串中每个小写字母出现的次数。这里使用了while循环遍历...

    二级C语言上机南开100题

    这涉及到对数组`a`的初始化、循环遍历(for循环),以及逻辑运算符(||和!)的使用。通过嵌套条件判断实现筛选条件。 3. 数组排序与整除判断:在第3题中,函数`fun`要求找出能整除给定数`x`且非偶数的整数,将它们...

    NCRE——三级C语言上机考试重点分析.pdf

    - **结构体数组和字符串的应用**:如何声明、初始化、操作结构体数组,以及处理字符串的基本操作。 **2. 上机考试考查重点分析** **第一类题目**:统计数组中满足特定条件的正整数并进行排序。这类题目的条件可能...

Global site tag (gtag.js) - Google Analytics