C语言2
二、
若p的值是垃圾值则*p所代表的内存单元的控制权没有分配给该程序int *p;*p=10;//error
通过被调函数修改主调函数普通变量的值:
int a[3];a是数组名,是个指针常量,存放的是数组中第一个元素的地址。如果p是个指针变量则p[i]永远等价于*(p+i),数组中的元素是连续存放的;确定一个维数组需要知道第一个元素的地址和数组的长度;只有两个指针变量指向的是同一块区间的不同单元可以相减值为相隔的单元;一个指针变量所占的字节为4个字节
字符串是以‘0\’结束
三、
int len=4;int a[len]={1,2};//error
int len=3;int a[3]={2,4};//ok
动态内存是在堆分配的,静态内存是在栈分配的;struct name{};枚举就是把一个事物的所有可能值一一列举出来
原码:符号-绝对值码,最高位0表示正,1表示负。负整数转二进制:求正数,取反,末尾加1。二进制转十进制:首位是1,取反,末位加1。二进制全部为零的含义:数值为0、字符串结束标记符’\0’、空指针NULL.我们计算机规定了,以零为编号的存储单元的内容不可读不可写
四、
位运算符可以对数据的操作精确到每一位
&---按位与,1and1=1,other 0
|---按位或,0and0=0,other 1
~---按位取反
^---按位异或,相同为0,AandA=0,AandB=1
<<---按位左移,左移n位相当于乘以2的n次方,i<<3的执行速度比i*8快
>>---按位右移,右移n们相当于除以2的n次方,前提是数据不能丢失
五、
- 分配内存:操作系统把某一块内存空间的使用权分配给该程序。
- 释放内存:操作系统把分配给该程序的内存空间使用权收回,并不是把该内存的内容清零
变量不初始化,则变量通常是垃圾值
系统是如何执行int i=4;这个语句的
- 软件请求操作系统为i分配存储空间
- 操作系统会在内存中寻找一块空闲的区域,把该区域当作i来使用
- 软件会把i和这块区域关联起来,今后对字母i的操作就是对这块区域操作
- 把5存储到字母i所关联的内存区域中
- 内存区域就是内存的一块存储单元
C语言2的更多相关文章
- C语言 · 高精度加法
问题描述 输入两个整数a和b,输出这两个整数的和.a和b都不超过100位. 算法描述 由于a和b都比较大,所以不能直接使用语言中的标准数据类型来存储.对于这种问题,一般使用数组来处理. 定义一个数组A ...
- Windows server 2012 添加中文语言包(英文转为中文)(离线)
Windows server 2012 添加中文语言包(英文转为中文)(离线) 相关资料: 公司环境:亚马孙aws虚拟机 英文版Windows2012 中文SQL Server2012安装包,需要安装 ...
- iOS开发系列--Swift语言
概述 Swift是苹果2014年推出的全新的编程语言,它继承了C语言.ObjC的特性,且克服了C语言的兼容性问题.Swift发展过程中不仅保留了ObjC很多语法特性,它也借鉴了多种现代化语言的特点,在 ...
- C语言 · Anagrams问题
问题描述 Anagrams指的是具有如下特性的两个单词:在这两个单词当中,每一个英文字母(不区分大小写)所出现的次数都是相同的.例如,"Unclear"和"Nuclear ...
- C语言 · 字符转对比
问题描述 给定两个仅由大写字母或小写字母组成的字符串(长度介于1到10之间),它们之间的关系是以下4中情况之一: 1:两个字符串长度不等.比如 Beijing 和 Hebei 2:两个字符串不仅长度相 ...
- JAVA语言中的修饰符
JAVA语言中的修饰符 -----------------------------------------------01--------------------------------------- ...
- Atitit 项目语言的选择 java c#.net php??
Atitit 项目语言的选择 java c#.net php?? 1.1. 编程语言与技术,应该使用开放式的目前流行的语言趋势1 1.2. 从个人职业生涯考虑,java优先1 1.3. 从项目实际来 ...
- 【开源】简单4步搞定QQ登录,无需什么代码功底【无语言界限】
说17号发超简单的教程就17号,qq核审通过后就封装了这个,现在放出来~~ 这个是我封装的一个开源项目:https://github.com/dunitian/LoTQQLogin ————————— ...
- InstallShield 脚本语言学习笔记
InstallShield脚本语言是类似C语言,利用InstallShield的向导或模板都可以生成基本的脚本程序框架,可以在此基础上按自己的意愿进行修改和添加. 一.基本语法规则 ...
- 用C语言封装OC对象(耐心阅读,非常重要)
用C语言封装OC对象(耐心阅读,非常重要) 本文的主要内容来自这里 前言 做iOS开发的朋友,对OC肯定非常了解,那么大家有没有想过OC中NSInteger,NSObject,NSString这些对象 ...
随机推荐
- Code First Entity Framework 6化被动为主动之explicit loading模式实战分析( 附源码)
在使用Entity Framework加载关联实体时,可以有三种方式: 1.懒加载(lazy Loading); 2.贪婪加载(eager loading); 3.显示加载(explicit load ...
- Windows Server 2008 Enterprise使用12G内存
开启PAE选项,用以下命令解决这个问题: 1.开始运行cmd2.输入 BCDEdit /set PAE forceenable 后回车3.重起系统显示12GB内存,一切正常
- cursor的形状
Example:CSS鼠标手型效果 <a href="#" style="cursor:hand">CSS鼠标手型效果</a> Exam ...
- Cmd批处理语法实例
@echo on :循环获取指定目录下以php为后缀的文件,且重命名后缀为html :for /r "E:\aaa\web" %%v in (*.php) do ren " ...
- iframe自适应高度的问题
最近工作中遇到了iframe自适应高度的问题. 如果在iframe中写定高度height的属性,并且iframe中内容高度小于给定的height时,会在手机浏览器中莫名的产生下拉框,造成体验度下降. ...
- 如何解决”无法将类型为“System.DateTime”的对象强制转换为类型“System.String”。“
字段Time在数据库中为datetime类型 dr.GetString(3).ToString() dr.GetString(3).ToString() => dr.GetDateTime(3) ...
- Cortex-M3学习日志(六) -- ADC实验
上一次简单的总结了一下DAC方面的知识,好吧,这次再来总结一下ADC方面的东东.ADC即Analog-to-Digital Converter的缩写,指模/数转换器或者模拟/数字转换器.现实世界是由模 ...
- (15)Visual Studio中使用PCL项目加入WCF WebService参考
原文 Visual Studio中使用PCL项目加入WCF WebService参考 Visual Studio中使用PCL项目加入WCF WebService参考 作者:Steven Chang 2 ...
- 北广传媒RTMP流媒体服务器漏洞
北广传媒移动电视(http://www.bj-mobiletv.com/)的RTMP流媒体服务器有漏洞 该漏洞可以上我们通过他们的服务器向互联网直播视频 使用任意可以发布RTMP流媒体的客户端(例如: ...
- poj1543---完美立方(枚举)
#include <stdio.h> #include <stdlib.h> int main() { int cube[101],n,i,a,b,c,d; for(i=1;i ...