当前位置: 首页 > news >正文

阿泰勒北京网站建设网站搭建合作协议

阿泰勒北京网站建设,网站搭建合作协议,微信开店免费平台,网站建设主要由哪几个部分组成一.typedef的应用 1.给已定的变量类型起个别名 加不加typedef,类型不变 (加之前是个数组,加之后是数组类型; 加之前是个函数指针,加之后是函数指针类型;) struct _person {char name[20];in…

一.typedef的应用

1.给已定的变量类型起个别名

加不加typedef,类型不变

(加之前是个数组,加之后是数组类型;

   加之前是个函数指针,加之后是函数指针类型;)

struct _person
{char name[20];int age;
};
typedef _person person_t;上下相等typedef struct _person
{char name[20];int age;
}person_t;
//怎么做的效果很是明显
struct Student
{char name[20];int age;char sex;
};int main(void)
{struct Student stu1 = { "qwl" , 20, 'm' };struct Student stu2 = { "qwj" , 16, 'm' };struct Student stu3 = { "chx" , 48, 'm' };struct Student* pst1 = &stu1;struct Student* pst2 = &stu2;struct Student* pst3 = &stu3;return 0;
}typedef struct Student
{char name[20];int age;char sex;
}STU;int main(void)
{STU stu1 = { "qwl" , 20, 'm' };STU stu2 = { "qwj" , 16, 'm' };STU stu3 = { "chx" , 48, 'm' };STU * pst1 = &stu1;STU * pst2 = &stu2;STU * pst3 = &stu3;return 0;
}

二.#define

标识符替换

#定义   标识符   内容
#define name    stuff#define MAX 100
#定义   宏名(参数表)    内容
#define  name(part-list)  stuff#define ADD(a,b) (a)+(b) 

part-list是一个由逗号隔开的标识符

三.assert

3.1 所在头文件 <assert.h>

3.2 assert()对表达式进行检测

       如果expression的结果为 0(条件不成立),那么断言失败,表明程序出错,assert() 会向标准输出设备(一般是显示器)打印一条错误信息,并调用 abort() 函数终止程序的执行。

        如果expression的结果为非 0(条件成立),那么断言成功,表明程序正确,assert() 不进行任何操作。

3.3 如果定义了#define NDEBUG,assert()就无效了

每次断言只能检验一个表达式

四.exit()函数

4.1 头文件<stdlib.h>
      4.2 功能:

退出程序的函数

     4.3 用法:

exit(1); 为异常退出(只要括号里的参数不是0都为异常退出

exit(0);正常退出

4.4 与return();的区别

return()是返回上一级主调函数,不一定会退出程序

五.free函数

5.1 头文件<stdlib.h>

5.2free函数必须和malloc函数同时使用,否则会报错

free无法释放栈内存的变量

#include<stdio.h>
#include<stdlib.h>
struct node //定义结构体
{int name;//结构体里面定义一个变量叫做name
};int main()
{struct node *p;//定义一个结构体变量free(p);
}

这个代码会报错,因为free只能释放由malloc动态分配在堆内存的内存,直接在主函数定义结构体变量是分配在栈内存里的内存,所以释放不了

#include<stdio.h>
#include<stdlib.h>
struct node //定义结构体
{int name;//结构体里面定义一个变量叫做name
};int main()
{struct node *p = malloc(sizeof(struct node));//定义一个结构体变量free(p);
}

5.3 free函数释放的是指针所指向的地址的内存(不是指针本身所在地址的内存),因此可以通过函数直接释放内存

#include<stdio.h>
#include<stdlib.h>
struct node //定义结构体
{int name;//结构体里面定义一个变量叫做name
};void fun(struct node *p)
{free(p);
}int main()
{struct node *p = malloc(sizeof(struct node));//定义一个结构体变量p->name = 10;//给结构体赋值printf("%d\n",p->name);fun(p);//释放内存printf("%d",p->name);
}

http://www.yayakq.cn/news/578707/

相关文章:

  • 做衣服的网站推荐云南建设局网站首页
  • 域名过期的网站怎么看抖音代运营公司经营范围
  • 做软件常用的网站有哪些软件陕西建设网综合便民服务中心网站
  • 无锡怎么做网站推广2020电商网站排行榜
  • 网站制作方案怎么写巨量引擎广告投放平台代理
  • 陕西建设银行网站网络营销培训机构排名
  • 四川宜宾市网站建设公司词语搜索排行
  • 一个网站域名ip如何填写网站建设计划表
  • 做网站以后的趋势iis7 网站访问权限
  • 绿派网站建设做直播网站用什么语言
  • 如何在百度上建立自己的网站做网站营销公司
  • 曲靖程序网站建设长沙设计公司排行榜
  • 关于宠物的网站网页设计网店托管公司
  • 建设网站所需要的基础知识一个网站没有备案
  • 下载php做站的官方网站c 企业网站开发
  • 移动宽带 怎么建设网站lwip在stm32上做网站
  • 网站开发遇到的困难总结网页logo
  • 寺庙网站建设方案怎么做视频网站的seo
  • 毕业设计 网站建设网站设计布局的重要性
  • 中山网站快照优化公司成立做网站的公司
  • 建设一个网站需要什么手续开网店的流程和步骤及费用
  • 上海住房与建设部网站网站开发模块
  • dede网站经常被挂马 怎么办集团企业网站建设方案
  • 什邡市建设局网站品牌营销策略分析
  • 文明网站建设工作进度表广西网站建设开发外包
  • 做网站需要架构师吗怎样营销网站
  • 网站推广软件工具视频播放网站建设
  • 建设厅网站实名制系统如何解聘wordpress添加php页面
  • 新郑市网站建设百度官网地址
  • logo模板下载网站推荐专业的深圳网站建设公司