Linux下c程序开发笔记
第一章
1.
解释性语言:shell javascript python 编程人员不需要经过编译 连接的过程,可以在特定环境下直接执行的语言 自动编译连接。开发效率高,但运行效率低。
编译型语言:java c c++,需要经过编程人员经过编译和连接产生可执行程序的语言。运行效率高。
2.
数据
数据结构:数据之间的一种或多种关系。密切相关的是数据的类型和数据的存放。
程序设计:编写程序的过程。
软件:程序和文档。
3.
c语言是结构化的语言
就是说:整个程序是用函数串联起来实现的。功能分解,自顶向下,逐个分解。
第二章
1.
开发环境
编辑器 vi
编译器 gcc
调试器 gdb
函数库 glibc
系统头文件 glibc_header
2.
开发图形界面 图形库
gnome 一般是用c
kde 一般使用c++
3.
IDE 集成开发环境
kylix 号称linux下的dephi
kdevelop
RHIDE 类似与turbo c++
4.gcc
-o 指定可执行文件名
-c 只输出编译结果 不链接,不生成可执行文件
-g 表示在编译时提供以后进行调试的信息
5.glibc 提供系统调用和基本函数的c库
两种安装方式
安装成测试用的函数库
安装成主要c函数库(默认)
几个附加包
linuxThreads locale crypt
6.glibc_header
若果缺少头文件 可以使用rpm的进行安装linux的开发环境
gcc依赖于binutils和app包
7.版本号
ls /lib/libc-* //glibc 版本号
gcc --version
8.c程序组成
可执行文件 最终运行命令
包含文件 include
库文件 该c程序自定义的库
e.g:rpm安装mysql数据库
可执行文件在/usr/bin
包含文件在/usr/include/mysql
库文件在/usr/lib/mysql
只有系统可以找到程序对应的包含文件和库文件,可执行文件才可以执行。
第三章
1.操作系统功能
命令解释
进程管理 进程就是正在运行的程序。分时机制 主要牵涉cpu的管理
内存管理
输入输出操作和外围设备的管理
文件管理
2.linux的特点
具有贵族血统
开发性
多用户
多任务
出色的稳定性和速度性能
丰富的网络性能
可靠的系统安全
可移植性
3.linux 关机
shutdown -h now //关机 推荐 -h可以加时间 表示在多少时间后关机
shutdown -r now //重启 推
相关文档:
例一:发送Signaling Packet:
Signaling Command是2个Bluetooth实体之间的L2CAP层命令传输。所以得Signaling Command使用CID 0x0001.
多个Command可以在一个C-frame(control frame)中发送。
如果要直接发送Signaling Command.需要建立SOCK_RAW类型的L2CAP连接Socket。这样才有机会自己填充Command Code,Identi ......
今天把最近学习ubuntu系统的历程稍作总结,希望对新手有用.
以我电脑为例,说一下关机重启命令.红色即为命令
[root@liwangjun1990 root]#logout ---注销账户
[root@liwangjun1990 root]#shutdown –h now —— ......
前几天参加某公司的笔试,有一道题是用纯C实现一个泛型函数。郁闷了好久用C++模板实现了。
宏有如下的特点:
1.与const相比,宏是在预编译的时候完成的
2.define 只做简单的替换,不做类型安全检查
3.使用不当会引起很多问题
宏的用法:
1.简单的宏定义
#define MAX 1024
2.宏定义功能块
#define MAX(a,b) ( ......
我用的UBUNTU9.04 。
装JDK时出现了Deleting temporary files...
屏幕持续十几分钟都还是Deleting temporary files...看来是装不了了。重新开始装一次
sudo chmod a+x ./jre-6u16-linux-i586.bin
sudo ./jre-6u16-linux-i586.bin
然后在终端配置环境变量:
export JAVA_HOME=/usr/java/jdk1.6.0_16
&n ......
linux下手动删除数据库实例,直接删除相应的目录就可以了,不多说了....
1. $ORACLE_HOME/dbs/
[oracle9@frogger dbs]$ pwd
/u01/app/oracle/product/9.2.0.1/dbs
[oracle9@frogger dbs]$ rm inittest02.ora
[oracle9@frogger dbs]$ rm orapwdtest02
2. $ORACLE_BASE/oradata/SID
[oracle9@frogger oradata]$ ......