C
mdodo
这个作者很懒,什么都没留下…
展开
-
C的琐碎笔记
1.在学习c的输入输出函数时记下的:1.1……char=c;c=getchar();c=c+32;/*如果输人的是大写字母,那么此处就是将大写字母转化为小写字母*/……1.2printf("%.2f%%/n",100.0/4);/*注意需要输入两个%%才能输出25%*/1.3scanf("%3f",&a);/*输入7.89则结果为a=7.8,因为用域宽说明%mf的格式输入,小数点要算一列。*/原创 2008-09-23 13:37:00 · 392 阅读 · 0 评论 -
C++中extern “C”含义
1.引言 C++语言的创建初衷是“a better C”,但是这并不意味着C++中类似C语言的全局变量和函数所采用的编译和连接方式与C语言完全相同。作为一种欲与C兼容的语言,C++保留了一部分过程式语言的特点(被世人称为“不彻底地面向对象”),因而它可以定义不属于任何类的全局变量和函数。但是,C++毕竟是一种面向对象的程序设计语言,为了支持函数的重载,C++对全局函数的处理方式与C有明显转载 2008-12-14 19:06:00 · 524 阅读 · 0 评论 -
C/C++数组名与指针区别深入探索
引言 指针是C/C++语言的特色,而数组名与指针有太多的相似,甚至很多时候,数组名可以作为指针使用。于是乎,很多程序设计者就被搞糊涂了。而许多的大学老师,他们在C语言的教学过程中也错误得给学生讲解:"数组名就是指针"。很幸运,我的大学老师就是其中之一。时至今日,我日复一日地进行着C/C++项目的开发,而身边还一直充满这样的程序员,他们保留着"数组名就是指针"的误解。 想必这种误解的根源在于国内转载 2008-12-14 19:43:00 · 554 阅读 · 0 评论 -
变量作用域
l 全局变量的作用域:从定义的位置开始到本文件的结束。C语言规定,如果全局变量和局部变量同名,则在二者的作用域重叠的区间局部变量有效,全局变量不起作用。l 1.由于全局变量属于程序中的所有函数,因此在程序执行过程中,一直占用存储空间,即使正在执行的函数根本不用这些全局变量,全局变量也要占用存储空间2.在某函数中若用到了全局变量,则所有调用该函数的住掉函数都要使用这些全局变量,从而原创 2008-11-10 20:42:00 · 720 阅读 · 0 评论 -
关于数组
l int a[6] 这个数组中不含a[6],最大为a[5]l 数组的存放顺序,如:对于数组a[3][4],先存放a[0][0]~a[0][3],再存放a[1][0]~a[1][3],如此类推。这个主要是在用数组指针指向这个数组(如指针p做p++操作)的时候要注意。还有就是这样赋值的时候:{1,2,3,4…}, 元素之间的对应关系。l char c[15]={“Beijing原创 2008-11-10 20:41:00 · 490 阅读 · 0 评论 -
关于函数
l 函数值的类型名若省略,则默认为int型。函数首部的类型定义与return后边表达式的类型要一致;当函数的返回值与定义的函数值类型不一致时,就以函数值类型为准,对数值型数据可以自动进行转换。l 函数参数(实参)的处理顺序是从右到左,如:int i=1;p=fun(I,++i);该函数先处理++i,使i加1,此时第一个i传日的值为2。l 数组传参例:int原创 2008-11-10 20:39:00 · 465 阅读 · 0 评论 -
关于指针
l 高级语言中的变量有三个属性:变量的名字,变量的值,变量的地址。数据类型决定了一个变量在内存中所占用的存储空间的大小以及允许执行的运算。l 指针变量的两种运算符:&:取地址运算符*:指针内容运算符(间接访问运算符)C语言中用NULL表示空指针。1. “&”只能作用于变量,包括基本类型变量和数组的元素,结构体类型变量或者结构体的成员,不能作用于数组名,原创 2008-11-10 20:44:00 · 624 阅读 · 0 评论 -
编译预处理命令
l 编译预处理命令不属于C语言的范畴,为了与一般的C语言相区别,所有预处理命令都以#开头,一般独占一行,且不加分号结尾。如果一行写不下,可以在行尾放一个反斜杠“/”并以回车键结束,在下一行继续写。编译预处理命令一般放在源程序的首部,但也可以放在程序的其他位置。C语言提供的预处理命令一共有三类:宏定义,文件包含和条件编译。l 不带参宏定义:#define 宏名 宏体定一个宏名来原创 2008-11-10 20:43:00 · 3572 阅读 · 0 评论 -
几个函数
Include l abs(int x) :求整数x的绝对值l fabs(double x) :求实数x的绝对值l sqrt(double x) :求x的平方根l pow(double x, double y) :求x的y次方l sin(double x) :求x的正弦值,要求角度x以弧度表示l cos(double x) :求x的余弦值,要求角度x以弧度表示原创 2008-11-10 20:37:00 · 447 阅读 · 0 评论 -
运算符和表达式
运算符和表达式1. a=b>c>=100óa=((b>c)>=100)2. x=y=z=1;(++x)||(++y)||(++z);结果:x=2,y=1,z=1因为:逻辑表达式求解中,并非所有逻辑运算都被执行。这里++x执行后,值为2,逻辑值为真,该式不再执行下去3. x=y=z=1;(--x)&&(--y)&&(--z)原创 2008-11-10 20:35:00 · 571 阅读 · 0 评论 -
C语言学习笔记02
1.格式输出:%-m.nl 格式说明符1.1附加说明符:-m.nl-:左对齐输出数据m.n:指定域宽及精度,m,n都是正整数。大于m,则用空格补充,小于m则按原始数据输出。l:用于输出long型数据,如%ld,%lu等,long型数据不能用%d格式输出。1.2格式说明符:d:按十进制有符号整型;o:八,无;x:十六,无;u:十,无;c:字符格式;s:字符串;f:6位小数形式,单双精度;e:标准形原创 2008-10-23 16:19:00 · 729 阅读 · 0 评论 -
C语言学习笔记0
1.计算机程序的基本设计方法:1.1结构化设计限制为顺序、选择、循环三种基本结构。1.2模块化设计1.2.1按功能划分模块1.2.2按层次组织模块1.2.3自顶向下逐步细化。2.数据类型分为三种:2.1基本类型:整型(int),实型(float,double),字符型(char);2.2构造类型:数组类型(array), 结构类型(struct),原创 2008-10-23 15:44:00 · 409 阅读 · 0 评论 -
C基本数据类型的笔记
1.整型变量赋值及其说明1.1在赋初值时八、十六进制数整型常数要特定的符号表示。int f=022; /*f的值是八进制数22,十进制为18*/1.2在整型常数后面添加一个L或者l字母表示该数为长整型。#define G 22L#define G 0773L /*表示八进制的长整型*/2.实行变量的赋值及其说明2.1实数常量只有十进制,默认为double型。2.2绝对值小于1的实数小数点前的0原创 2008-09-23 12:59:00 · 480 阅读 · 0 评论 -
《问题求解与程序设计 C语言版》学习笔记
有很多已经以写程序和其注释的方式记录在我的workspace中了。现在记录一下比较零碎和易忘的东西:1. 在C语言中,函数的返回值为数组是不合法的。2. 多维数组的声明中,只有第一维(即行数)是可以忽略的如: int array[][3];3. 使用strcpy,strncpy,strcat,strncat时,注意两点:(P330) 1)输出参数是否有原创 2009-06-02 22:40:00 · 1275 阅读 · 0 评论