C语言构建动态数组完整实例
本文以一个完整的实例代码简述了C语言构建动态数组的方法,供大家参考,完整实例如下:
#include <stdio.h> #include <malloc.h> int main(void) { int len; int * arr; printf("请输入数组长度:"); scanf("%d", &len); arr = (int *)malloc(sizeof(int)*len); printf("请输入数组的值:"); for ( int i = 0; i < len; i ++) { scanf("%d", &arr[i]); } for (int j = 0; j < len; j ++) { printf("%d:%d ", j , arr[j]); } free(arr); return 0; }
运行结果如下:
E:\clearning\cpointer>gcc dynamicarray.c -o dm --std=c99 E:\clearning\cpointer>dm 请输入数组长度:5 请输入数组的值:1 2 3 4 5 0:1 1:2 2:3 3:4 4:5
相关推荐
-
C语言完美实现动态数组代码分享
我们知道,C语言中的数组大小是固定的,定义的时候必须要给一个常量值,不能是变量. 这带来了很大的不便,如果数组过小,不能容下所有数组,如果过大,浪费资源. 请实现一个简单的动态数组,能够随时改变大小,不会溢出,也不会浪费内存空间. 下面的代码实现了简单的动态数组: #include <stdio.h> #include <stdlib.h> int main() { //从控制台获取初始数组大小 int N; int *a; int i; printf("Input ar
-
C语言动态数组的使用实现代码
C语言动态数组 从键盘读入n个整数,使用动态数组存储所读入的整数,并计算它们的和与平均值分别输出.要求尽可能使用函数实现程序代码.平均值为小数的只保留其整数部分. 样例输入: 5 3 4 0 0 2 样例输出: 9 1 样例输入: 7 3 2 7 5 2 9 1 样例输出: 29 4 代码如下: #include<stdio.h> int addAll(int a[],int N); int aveFun(int sum,int n); int main(){ int N; int sum
-
C语言运算符优先级列表(超详细)
每当想找哪个运算符优先级高时,很多时候总是想找的就没有,真让人气愤!现在,终于有个我个人觉得非常全的,分享给大家,欢迎拍砖! C语言运算符优先级 优先级 运算符 名称或含义 使用形式 结合方向 说明 1 [] 数组下标 数组名[常量表达式] 左到右 -- () 圆括号 (表达式)/函数名(形参表) -- . 成员选择(对象) 对象.成员名 -- -> 成员选择(指针) 对象指针->成员名 -- 2 - 负号运算符 -表达式 右到左 单目运算符 ~ 按位取反运算符 ~表达式 ++ 自增运算符 +
-
C语言中system()函数的用法总结
system()函数功能强大,很多人用却对它的原理知之甚少先看linux版system函数的源码: 复制代码 代码如下: #include <sys/types.h>#include <sys/wait.h>#include <errno.h>#include <unistd.h> int system(const char * cmdstring){ pid_t pid; int status; if(cmdstring == NULL){
-
linux根据pid获取进程名和获取进程pid(c语言获取pid)
Liunx中通过进程名查找进程PID可以通过 pidof [进程名] 来查找.反过来 ,相同通过PID查找进程名则没有相关命令.在linux根目录中,有一个/proc的VFS(虚拟文件系统),系统当前运行的所有进程都对应于该目录下的一个以进程PID命名的文件夹,其中存放进程运行的N多信息.其中有一个status文件,cat显示该文件, 第一行的Name即为进程名. 打开stardict程序,进程名为stardict: shell中分别根据Pid获取进程名.根据进程名获取Pid 1)查找stard
-
c语言动态数组示例
复制代码 代码如下: #include <stdio.h>#include <stdlib.h> int main(){ //从控制台获取初始数组大小 int N; printf("Input array length:"); scanf("%d",&N); printf("\n"); //分配空间 int *a; a=(int *)calloc(N,sizeof(int)
-
c语言字符数组与字符串的使用详解
1.字符数组的定义与初始化字符数组的初始化,最容易理解的方式就是逐个字符赋给数组中各元素.char str[10]={ 'I',' ','a','m',' ','h','a','p','p','y'};即把10个字符分别赋给str[0]到str[9]10个元素如果花括号中提供的字符个数大于数组长度,则按语法错误处理:若小于数组长度,则只将这些字符数组中前面那些元素,其余的元素自动定为空字符(即 '\0' ). 2.字符数组与字符串在c语言中,将字符串作为字符数组来处理.(c++中不是)在实际应用
-
使用C语言实现vector动态数组的实例分享
下面是做项目时实现的一个动态数组,先后加入了好几个之后的项目,下面晒下代码. 头文件: # ifndef __CVECTOR_H__ # define __CVECTOR_H__ # define MIN_LEN 256 # define CVEFAILED -1 # define CVESUCCESS 0 # define CVEPUSHBACK 1 # define CVEPOPBACK 2 # define CVEINSERT 3 # define CVERM 4 # define EXP
-
c语言冒泡排序法代码
总在写 总在错, 面试也还忘记 学习就是这么个过程, 温故才知新, 望自己谨记 忘记不要紧 复习就好 //排序是有很多种方法的 ,完成从小到大的排列 复制代码 代码如下: #include <stdio.h>void sort(int *a,int len){int i=0; int j; int t; for(i=0;i<len;i++) { for(j=0;j<len-i-1;j++) { if(a[j]>a[
-
C语言socket编程开发应用示例
实现步骤: 1. Server端 复制代码 代码如下: #include <stdio.h> //用于printf等函数的调用#include <winsock2.h> //Socket的函数调用 #pragma comment (lib, "ws2_32") //C语言引用其他类库时,除了.h文件外,还要加入对应的lib文件(这个不同于C#) 复制代码 代码如下: int main()
-
深入分析C语言中结构体指针的定义与引用详解
指向结构体类型变量的使用首先让我们定义结构体:struct stu{char name[20];long number;float score[4];} ;再定义指向结构体类型变量的指针变量:struct stu *p1, *p2 ;定义指针变量p 1.p 2,分别指向结构体类型变量.引用形式为:指针变量→成员:[例7-2] 对指向结构体类型变量的正确使用.输入一个结构体类型变量的成员,并输出. 复制代码 代码如下: #include <stdlib.h> /*使用m a l l o c (
-
C语言十进制转二进制代码实例
用C语言实现将十进制转化为二进制,并统计转换后的二进制码中1的个数. #include <stdio.h> int binaryNum[16]; //存放转换后得到的二进制码 int count=0; //计数十进制整数被2除的次数 int oneCount=0; //得到的二进制码中1的个数 void main(){ int num; printf("输入一个十进制的整数:"); scanf("%d",&num); while( (num/2)
-
基于C语言实现的贪吃蛇游戏完整实例代码
本文以实例的形式讲述了基于C语言实现的贪吃蛇游戏代码,这是一个比较常见的游戏,代码备有比较详细的注释,对于读者理解有一定的帮助. 贪吃蛇完整实现代码如下: #include <graphics.h> #include <conio.h> #include <stdlib.h> #include <dos.h> #define NULL 0 #define UP 18432 #define DOWN 20480 #define LEFT 19200 #defi
随机推荐
- 真正能用,还有点效果的CSS挂马代码的方法
- 支付宝 接口开发帮助(asp,php,asp.net,jsp)
- 外贸英语-900句,从询盘,报盘,价格,品质,运输一直到外贸关系 4/4第1/2页
- Spark入门简介
- asp.net为网页动态添加description描述信息的方法
- Window 7/XP 安装Apache 2.4与PHP 5.4 的过程详解
- Windows下的PHP5.0安装配制详解
- PHP小技巧之函数重载
- MFC自定义消息的实现方法
- 浅谈js-FCC算法Friendly Date Ranges(详解)
- PHP5.5.15+Apache2.4.10+MySQL5.6.20配置方法分享
- C++实现银行排队系统
- python列表去重的二种方法
- jquery实现弹出层效果实例
- 各浏览器对link标签onload/onreadystatechange事件支持的差异分析
- Windows下Java+MyBatis框架+MySQL的开发环境搭建教程
- Java的接口和抽象类深入理解
- C++实现的求解多元一次方程示例
- JavaScript同源策略和跨域访问实例详解
- 微信小程序使用npm支持踩坑