- 博客(18)
- 收藏
- 关注
原创 linux 文件编程
1.系统调用- 创建 int creat(const char *filename, mode_t mode ) filename :创建的文件名 (包含路径,缺省为当前路径) mode:创建模式 常创建模式 : S_IRUSR---可读; S_IWUSR---可写; S_IXUSR---可执行; S_IXRWU---可读、可写、可执行;...
2019-01-12 21:16:24 230 1
原创 函数和指针
在C语言中,一个函数总是占用一段连续的内存区,而函数名就是该函数所占内存区的首地址。把函数的这个首地址(或称入口地址)赋予一个指针变量,使该指针变量指向该函数。然后通过指针变量就可以找到并调用这个函数。我们把这种指向函数的指针变量称为“函数指针变量”。函数指针变量定义的一般形式为:类型说明符 (*指针变量名)();例如: int (*pf)(); 表示pf是一
2017-05-12 22:05:54 232
原创 查找最小的k个元素(笔试题)
输入n个整数,输出其中最小的k个。例如输入1,2,3,4,5,6,7和8这8个数字,则最小的4个数字为1,2,3和4#include #include int main(){int *str[10];int i,j;int n,k,*t;printf("输入n个整数,输出其中最小的k个:\n");scanf("%d %d\n",&n,&
2017-05-10 22:50:51 467
原创 指针、数组和字符串
a.数组元素和指针数组的指针是指数组的起始地址,数组元素的指针是数组元素的地址。例如:int a[10]; /*定义a为包含10个整型数据的数组*/int *p; /*定义p为指向整型变量的指针*/p=&a[0]; 把a[0]元素的地址赋给指针变量p。也就是说,p指向a数组的第0号元素。用指针引用数组元素
2017-05-09 22:19:16 269
原创 指针和变量
1.指针是什么?起什么作用?指针是变量的一种,里面是一个地址,通过这个地址找到要找的数据。实质:单元的地址就是指针内容;2.指针运算符&是取地址的运算符,*是表示指针运算符例:int *p1,a ;p1=&a; *p1 =3;3.指针作函数参数函数的参数不仅可以是整型、实型、字符型等
2017-05-08 20:42:43 246
原创 习题
1.题目:编写程序,打印出9×9乘法表#includeint main(){int i,j;for(i=1;i{for(j=1;j{printf("%d*%d=%d ",i,j,i*j);}printf("\n");}return 0;}2.题目:编写程序,实现strcmp()相同功能myStrcmp()函数#in
2017-05-05 21:58:06 170
原创 野指针
野指针不是NULL指针,是指向"垃圾"内存的指针。一般不会错用NULL指针,因为用if语句很容易判断。但是野指针是很危险的,if语句对它不起作用。野指针的成因主要有两种。(1)指针变量没有被初始化。任何指针变量刚被创建时不会自动成为NULL指针,它的默认值是随机的,它会乱指一气。所以,指针变量在创建的同时应当被初始化,要么将指针设置为NULL,要么让它指向合法的内存。例如
2017-05-04 22:20:09 175
原创 万能的指针
void指针:void指针一般被称为通用指针或泛指针,它是C语言关于"纯粹地址“的一种约定。void指针指向某个对象,但该对象不属于任何类型。请看下例。int * ip;void *p;在上例中,ip指向一个整型值,而p指向的对象不属于任何类型。在C语言中,任何时候都可以用其他类型的指针来代替void指针,或者用void指针来代替其他类型的指针,并且不需要进行强制转换。例如
2017-05-03 22:08:52 1389
翻译 数组与指针
数组与指针变量在内存存放是有地址的,数组在内存存放也同样具有地址。对于数组来说,数组名就是数组在内存存放的数组首元素地址。指针变量是用于存放变量的地址,可以指向变量,当然也可存放数组的首址或数组元素的地址,这就是说,指针变量可以指向数组或数组元素对数组而言,数组和数组元素的引用,也同样可以使用指针变量。5.1数组认知C语言处理数组的方式是它广受欢迎的原因之一。C
2017-05-02 20:46:14 255
原创 预处理
所谓预处理是指在进行编译的第一遍扫描(词法扫描和语法分析)之前所作的工作。预处理是C语言的一个重要功能,它由预处理程序负责完成。当对一个源文件进行编译时,系统将自动引用预处理程序对源程序中的预处理部分作处理,处理完毕自动进入对源程序的编译。 对源程序编译之前做一些处理,生成扩展C源程序种类宏定义 #define文件包含 #include条件编译
2017-04-30 22:52:18 353 1
原创 函数
C程序:只包含一个主函数main()也可以包含一个主函数和若干个其它函数(库函数和自定义函数)函数类型 函数名(形式参数类型说明表){ 声明部分 执行部分}函数类型 函数名(形式参数类型说明表){ 声明部分 执行部分}如:printf(“Hello,World!\n”);max(10,20);
2017-04-29 19:16:28 340
原创 数组
一、一维数组1.一维数组的定义格式为:类型说明符 数组名[常量表达式]; 例如: int a[10]; 它表示定义了一个整形数组,数组名为a,有10个元素。2.在定义数组时,需要指定数组中元素的个数,方括弧中的常量表达式用来表示元素的个数,即数组长度。3.常量表达式中可以包括常量和符号常量,但不能包含变量。注意:C语言不允许对数组的大小作动态定义,即数组的大小不依赖于
2017-04-28 22:39:06 581
原创 控制结构和循环语句
一、控制语句1. if语句 if语句是C语言中最简单、最常用的语句,然而很多程序员用隐含错误的方式写if语句if(表达式1)语句1 else if(表达式2)语句2 else if(表达式3)语句3 …… else if(表达式m)语句m else 语句n匹配规则:else总是与它上面的,最近的,统一复合语句中的,未配对的i
2017-04-27 21:30:55 289
原创 运算符、表达式2
3.4 位运算 在计算机程序中,数据的位是可以操作的最小数据单位,理论上可以用"位运算"来完成所有的运算和操作,一般的位操作是用来控制硬件的,或者进行数据变换使用,但是,灵活的位操作可以有效地提高程序运行的效率。C语言提供了位运算的功能,这使得C语言也能像汇编语言一样用来编写系统程序。位运算符C语言提供了六种位运算符——&(按位与)、I(按位或)、^(按位异或)、~(取反)、>(右
2017-04-21 18:45:35 300
原创 运算符、表达式
3.2条件运算符和表达式如果在条件语句中,只执行单个赋值语句时,常可使用条件表达式来实现,不但是程序简洁,也可以提高运行效率。条件运算符为?和:,它是一个三目运算符,即使有三个参与运算的量。有条件运算符组成条件表达式的一般形式为表达式1? 表达式2: 表达式3其求值规则为:如果表达式1的值为真,则以表达式2的值作为条件表达式的值,否则以表达式2的值作为整个条件表达式的值。例如:
2017-04-20 19:01:12 293
原创 数据类型2
2.6.1 static简单来说static修饰变量,就是指该变量空间独立于函数中的auto变量或者栈变量,static变量空间在内存中的静态区分配。1.修饰局部变量在用static修饰局部变量后,该变量值在初次运行时进行初始化工作,且只进行一次。#includevoid fun(){static int a=1;a++;printf("%d\n",a);}
2017-04-19 18:28:58 212
原创 数据类型
2.2.1 变量什么是变量?其值在其作用域内可以改变的量称为变量。变量依据其定义的类型,分为不同类型,如整型变量、字符型变量、浮点型变量、指针型变量等。变量的值可以改变,可以被覆盖、被写入、被赋值。每个变量必须有一个名字和他所在的空间绑定。2.2.2变量名和变量值例如:int a=97; 整型变量a在内存中是以97的二进制存放的,使用时以十进制形式表现出来char ch1=
2017-04-18 21:35:11 380
原创 嵌入式Linux c语言开发工具
vi 的基本操作1.vi的进入与退出vi myfile 进入vi之后,是处于「命令行模式」「命令行模式」下按一下字母 i 就可以进入「插入模式」「ESC」键转到「命令行模式」再删除文字:w filename (以指定的文件名filename保存):wq (存盘并退出vi) :q! (不存盘强制退出vi)2.vi
2017-04-17 23:37:10 1149
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人