第一天2017/03/28
王保明老师面试常问问题:二级指针用过没有?怎么用的?
二级指针的输入输出模型会不会?
二级指针怎样把结果甩出来?
模块的封装与设计?做过哪些模块?
回调函数
程序员培养哪些能力?
两种架构
程序设计思维
【知识点开奖】
1、选择排序思想
————————————————————x轴
|
|
|
|
|
|
y
轴
for(int i=0; i<10; i++) //外层循环:控制第几趟for(int j=i+1; j<10;j++) //内层循环:比较大小{if(a[i]<a[j]){int temp = a[i];a[i] = a[j];a[j] = temp;}}
2、
void print(int a[10])
{... ...
}
int main()
{int a[10] = {1,2,3};print(a);
}
注:在形参里边出现的int a[10]、char ch[30]等,编译器会把它当成指针,也不会主动的分配内存 < == > 等价于int *a、char *c等。
3、压死初学者的三座大山
数组数组类型
数组数据类型和数组数类型指针
数组数据类型和数组数类型指针关系
4、数据类型、变量的本质
数据类型:是固定内存大小的别名,比如:a+1与 &a+1 的不一样,是因为a与&a的数据类型不同,步长不同。
变量:(一段连续)内存空间的别名,变量是一个标号。变量三要素(名称、大小、作用域)
5、void*
memset、memcpy
void不能定义变量,因为编译器不知道void内存大小
void*指针,可被任何指针赋值,但是反之不行。
6、内存四区模型-建立流程
(1)应用程序.exe程序中的代码存放在硬盘上
(2)当点击.exe程序运行起来时,操作系统先把代码Load到内存中;
(3)操作系统把代码分成四个区
(4)然后再找到入口函数main,进行执行代码。
【程序案例】
//C语言的灰色地带
int a; //全局区
int b = 100; //全局区int main()
{int a; //栈区(又叫临时区)int *p;//栈区p = &a; //cpu执行的代码,放在代码区a = 10; //cpu执行的代码,放在代码区p = (int*)malloc(sizeof(int)*100); //堆区if(p){free(p);}
}
7、在项目工程中,“全局变量”的统一管理
/*【常见困难】在项目开发中,如果某个头文件中定义了一个全局变量,如果
在其他的多个文件中包含#include"head.h",那么会造成编译错
误:“error:找到一个或多个重定义的符号”。
*/
//解决方案:在项目工程开发过程中,//1.把所有的全局变量的定义都放在一个.cpp文件中,统一管理。int a = 0;int b = 1;int c = 2;//2.在其他文件中使用某个全局变量时,直接用extern关键字声明(可以把该全局变量扩展到声明的文件中)。//即extern修饰全局变量,可以使该全局变量跨文件。extern int a;extern int b;extern int c;
第一天2017/03/28相关推荐
- Contest2071 - 湖南多校对抗赛(2015.03.28)
Contest2071 - 湖南多校对抗赛(2015.03.28) 本次比赛试题由湖南大学ACM校队原创 http://acm.csu.edu.cn/OnlineJudge/contest.php?c ...
- [Buzz.Today]2013.03.28
# TinkerCAD关门大吉 TinkerCAD的关闭,在于盈利的压力,Piaoger以为如今超期潮涌的Cloud和Web Application,基本上都是赌未来.赌青春,赚钱的方式基本上就是骗个 ...
- 第一个程序03 - 零基础入门学习汇编语言22
第四章:第一个程序03 让编程改变世界 Change the world by program 可执行文件中的程序装入内存并运行的原理 在DOS中,可执行文件中的程序P1若要运行,必须有一个正在运行的 ...
- easyUI datebox 日期空间斜杠格式化。例如将日期空间中显示2017-03-13,改为2017/03/13...
easyUI datebox 日期空间斜杠格式化 将日期空间中显示2017-03-13,改为2017/03/13 //日期控件斜杠格式化 function formatDate(date){if( & ...
- 湖南多校对抗赛(2015.03.28)
Contest2071 - 湖南多校对抗赛(2015.03.28) Contest2071 - 湖南多校对抗赛(2015.03.28) 本次比赛试题由湖南大学ACM校队原创 http://acm.cs ...
- matlab 模拟交易,股票量化投资策略模拟交易系统 [2017.03.26 更新]
本帖最后由 heawjc 于 2017-3-27 17:13 编辑 本系统允许自主研发量化投资策略并进行模拟交易,从2000多只A股中自动选取并交易:策略研发完成即可对历史行情数据进行模拟调试,验证其 ...
- 易语言调试工具 code by:↖星空·之上↗ Ver:2.0 (2017/5/28更新)
目前测试了win7 32 64位可以使用,win10右键以管理员身份运行. 支持Hook易语言静态编译和非静态编译的程序! 注意:XP不兼容,不能用. Ver1.1 (17:12 2017/4/2 ...
- kindel读书笔记——2017.03.22-04.21
1. 恶意 [2017/03/29, ¥ 17.98] 白夜行的对偶篇,告诉你从小长大的伙伴不一定与你共生,也可以处心积虑地要毁掉你的一切. 2. 解忧杂货店 [2017/04/20, ¥ 11.8 ...
- 黑武器linux下载地址,酷毙了!暗黑版 Arch,BlackArch Linux 2017.03.01发布
By - 3月, 2nd 2017 作者:闻其详 Arch 是大名鼎鼎的滚动更新的 Linux 发行版,江湖上哪个不知,谁个不晓,练就顶上的 Linux 功夫基本都不会绕路于它,然而就像杂粮中出有白米 ...
最新文章
- 华为手机设置代理网络就无法使用_华为手机一定要了解的7个设置!1秒开启使用,实在太强大了...
- 学生用计算机2ndf,手机计算器2ndf键在哪 等同于INV键
- 【DB2】db2命令Export与Import
- SpringBoot - 子模块下spring-boot-configuration-processor不生效问题
- Java设计模式(十二) 策略模式
- linux下防火墙脚本,Linux系统如何修改防火墙配置
- Windows平台摄像头或屏幕RTMP推送:OBS VS SmartPublisher
- 比较一下以“反射”和“表达式”执行方法的性能差异【转】
- SCCM 2012 R2 从入门到精通 Part11 系统推送(2)
- Vant Weapp小程序蹲坑之事件名称问题及解决方案
- Centos 6.8 为自己打造Linux小系统
- Android系统中属性值的设置和使用
- scvmm管理hyper-v克隆主机(二)
- 【伸手党福利】开发人员重装系统顺序
- win7录屏_原来电脑自带的录屏功能,那么好用,可惜很多人还不知道,真遗憾...
- 2019年东北四省赛感想
- js之win10计算器
- 前沿|PaddlePaddle开源项目DeepNav“无人船”炼成记(二)
- Linux脚本的制作命令
- Spring Boot使用websocket实现聊天室
热门文章
- 第九章 组合模型在信贷风控中的应用
- 如何做自己的服务监控?spring boot 2.x服务监控揭秘
- 一个可供中小团队参考的微服务架构技术栈
- MySQL批量更新死锁案例分析--转载
- Python基础知识(第十天)
- 德勤:95%的受访公司将在2019年投资区块链
- 巨头都在争抢无人驾驶 这家智慧停车公司却先上了路 科技事务 百家号 08-14 15:55 今年来,互联网巨头在智慧交通领域动作频频,4月初,百度提出雄心勃勃的“阿波罗计划”,宣布开放自动驾驶平台以
- 招商银行、To B智能投顾讲述:金融机构的人工智能实践 | CCF-GAIR 2017
- 深度研究 | 区块链在征信业的应用探讨:切中了痛点,但也面临四大挑战
- 专访腾讯徐汉彬:日请求高达3.5亿+平台的架构设计及演变