大家好,我是一童,今天分享的是 指针数组做main函数的形参;动态数组malloc函数; 并总结指针变量类型及含义;
-
指针数组做main函数的形参
函数原型: int main(int argc,char*argv[])
图示:
操作:
在Visual C++环境下对程序编译和连接后,选择“工程”–“设置”–“调试”–“程序变量”;输入China Beijing 后运行; -
动态分配
函数原型:
void * malloc(unsigned int size);// malloc(100)开辟100字节的临时分配域,函数值为第一个字节地址
void * calloc(unsigned n,unsigned size); // p=calloc(50,4) 开辟50*4个字节的临时分配域,把初始地址赋给p,n:数组元素个数,size:每个元素长度
void free(void * p)//free§释放p所指的已分配动态空间
void *realloc(void *p,unsigned int size)// realloc(p,5)将p所指向已分配动态空间改为50字节
3.指针变量类型及含义
代码:
1.
#include <stdio.h>//指针数组做main函数的形参
void main(int argn,char *argv[])//argn;参数个数,argv:参数向量
{
while(argn>1)
{
argv++;
printf("%s\n",*argv);
argn--;
}
}
截图
2.
#include <stdio.h>//动态数组 输入成绩查找不及格
#include <stdlib.h>
void main()
{
void check(int *);
int *p1,i;
p1=(int *)malloc(5*sizeof(int));//开辟动态内存,将地址转换int*型,放在p1中
puts("请输入成绩:");
for(i=0;i<5;i++)
scanf("%d",p1+i);
check(p1);
free(p1);
}
void check(int *p)
{
int i;
printf("不及格成绩: ");
for(i=0;i<5;i++)
if(p[i]<60)
printf("%d ",p[i]);
printf("\n");
}
有写错或者需要优化的地方,欢迎下方留言!!