随笔分类 -  C/C++

摘要:前些日子看书看到的一个C语言的格式说明符----%n ,蛮有意思的,拿来与大家分享下。printf可不只是一个输出函数哦,这个%n就是把字符串的长度,写进一个变量。看代码吧,好理解。#include <stdio.h>void main(){ int lenA; int lenB; printf("Hello%n\n",&lenA); printf("Hello%n World!\n",&lenB); printf("%d\n",lenA); printf("%d\n",lenB);}最 阅读全文
posted @ 2012-10-15 19:52 xss 阅读(1359) 评论(1) 推荐(0)
摘要:今天写代码可是被搞的七荤八素的,所以也就记录下,还是C语言,现在应该没有用C写软件的了,我今天写的时候就遇到一个很恶心的问题,憋了好长时间。先上个示例代码吧。 do { if (User_in == 'y' || User_in == 'Y' ) { GetInfo(); // 我的一个获取信息函数,你可以自己实现,看看 printf("Continue to Get information?(y/n):"); } else c... 阅读全文
posted @ 2012-09-19 21:43 xss 阅读(698) 评论(1) 推荐(0)
摘要:学完链表后就学了栈,一直想用代码实现下,可是要打工啊·······都连续加了两晚夜班了,累死了······今天休息,用了些时间写了写,还是和以前一样希望和新手一起学习,也希望得到大神指导。看代码吧,注释不合适的地方,请见谅······#include <stdio.h>#include <stdlib.h>#include <malloc.h>// 定义一个节点的结构ty 阅读全文
posted @ 2012-08-22 14:37 xss 阅读(41539) 评论(13) 推荐(2)
摘要:今天又学了下链表,发上来和菜鸟一起学习,欢迎大神指点···········今天我实现的是插入链表节点和删除链表节点。看代码吧,注释写的不好的就见谅吧·················/*链表节点的插入与删除编译环境:VC++6.0编译系统:windowsXPSP3*/#include<stdio.h>#in 阅读全文
posted @ 2012-08-17 15:03 xss 阅读(43517) 评论(4) 推荐(1)
摘要:今天继续学习了链表,这次是检测链表是否为空,计算链表长度,这都是蛮简单的,最后就是给链表排序,这里的链表排序是当然是最简单的冒泡排序。还是希望和新手一起学习,希望得到大牛指点······ 这次代码还是基于上次C语言实现链表的创建及遍历链表这个文章中的代码,直接在这上面写的,添加的,检测是否为空函数,计算链表长度函数,和链表排序函数,好了,上代码了。/*链表创建,遍历,检测是否为空,计算链表长度,排序编译环境:VC++6.0编译系统:windowsXPSP3*/#include<stdio.h>#include<std 阅读全文
posted @ 2012-08-16 16:18 xss 阅读(15608) 评论(13) 推荐(0)
摘要:有半年没有用C写代码了,现在在学习数据结构,写了点代码,发现了很大的问题。一直以来我感觉自己C语言算不上精通,但是基本语法大多数也全都掌握的差不多了,但是今天写代码的时候,要通过scanf函数给一变量赋值时,居然忘写 & 符号,这无异于啪啪给我两巴掌啊,这么简单的语法居然给忘记了,我相信也有不少人和我差不多,都是眼高手低的家伙,以为自己以前学过,就懒得在练习了,可是到真写的时候还写不出来。看来以后还是要多写代码才行,大家一起加油哦,好了不说了,上代码了。只是一段简单的代码希望和菜鸟一起学习,注释不对的地方,请大牛指点。还有就是这只是一个非循环单链表···& 阅读全文
posted @ 2012-08-14 19:27 xss 阅读(44639) 评论(2) 推荐(5)
摘要:网络编程入门知识 Linux系统是通过提供套接字(socket)来进行网络编程的.网络程序通过socket和其它几个函数的调用。 socket通常也称作"套接字",用于描述IP 地址和端口,是一个通信链的句柄,也可以看成是一种文件描述符 。socket实质上提供了进程通信的端点。进程通信之前,双方首先必须各自创建一个端点,否则是没有办法建立联系并相互通信的。正如打电话之前,双方必须各自拥有一台电话机一样。 socket类型: ①。流式套接字(SOCK_STREAM) 流式套接字可以提供可靠的,面向连接的通讯流,它使用TCP协议。 ②。数据报套接字(SOCK_DGRAM) 数 阅读全文
posted @ 2012-07-16 20:56 xss 阅读(4438) 评论(1) 推荐(0)
摘要:消息队列一.IPC通讯#include <sys/types.h>#include <sys/ipc.h>key_t ftok(char *pathname,char proj);功能:返回文件对应的键值。 pathname:文件名 proj:项目名(不为0即可)二.打开/创建消息队列#include <sys/msg.h>int msgget(key_t key,int msgflg);功能:返回与键值key相对应的消息队列描述字 key:键值,由ftok获得。 msgflg:标志位 。 标志位的取值: IPC_CREAT 创建新的消息队列。 IPC_EX 阅读全文
posted @ 2012-06-28 20:07 xss 阅读(465) 评论(0) 推荐(0)
摘要:进程通信(二) 信号通讯1.常见的信号类型: SIGHUP 从终端发出的结束信号 SIGINT 来自键盘的终断信号(ctrl-c) SIGKILL 该信号结束接收信号的进程 SIGTERM kill命令发出的信号 SIGSTOP 来自键盘(ctrl-z)或调试程序的停止执行信号2.发送信号的主要函数有kill和raise 区别: kill既可向自身发送信号,也可以像其他进程发送信号 raise只向进程自身发送信号 #include <sys/types.h> #include <sysnal.h> int kill(pid_t pid,int signo)... 阅读全文
posted @ 2012-06-26 10:53 xss 阅读(447) 评论(0) 推荐(0)
摘要:进程间通信(一)1.为什么需要进程间通信? ① 数据转移 一个进程需要它的数据发送给另一个进程 ② 资源共享 多进程之间共享同样的资源 ③ 通知事件 一个进程需要想另一个或一组进程发送消息,通知他们发生了什么事件 ④ 进程控制 一个进程控制另一个进程的执行 一.管道通信管道定义: 管道是单向的,先进先出的,它把一个进程的输出和另一个进程的输出连接在一起,一个进程(写进程)在管道尾部写入数据,另一个进程(读进程)从管道头部读出数据。管道分类: 无名管道: 用与父进程和子进程之间的通信 有名管道: 用于运行于同一系统中任意两进程间的通信无名管道: int pipe(int filedis[2].. 阅读全文
posted @ 2012-06-26 10:52 xss 阅读(567) 评论(0) 推荐(0)
摘要:时间编程 格林威治时间(GMT )是世界标准时间(UTC)。 需要头文件 sys/time.h 相关函数: time_t time(time_t *tloc); 作用:获取日历时间,即从1970年1月1日0点到现在所经历的秒数。 struct tm * gmtime (const time_t *timep); 作用:将日历时间转化为格林威治时间,并保存至 TM 结构中。 struct tm * localtime(const time_t * timep); 作用:将日历时间转化为本地时间并保存至 TM 结构中。 TM 结构:structtm{inttm_... 阅读全文
posted @ 2012-06-26 10:51 xss 阅读(493) 评论(0) 推荐(0)
摘要:进程编程一.获取ID: #include <sys/types.h> #include <unistd.h> pid_t getpid(void); 获取本进程ID pid_t getppid(void); 获取父进程ID例:#include<stdio.h>#include<unistd.h>#include<stdlib.h>intmain(void){printf("PID=%d\n",getpid());printf("PPID=%d\n",getppid());return0;}二.进 阅读全文
posted @ 2012-06-26 10:51 xss 阅读(518) 评论(0) 推荐(0)
摘要:文件编程 一.系统调用~~创建 int creat (const char *filename, mode_t mode); filename:即要创建的文件名(包含路径,缺省为当前路径) mode:创建模式 常见的模式: S_IRUSR 可读 S_IWUSR 可写 S_IXUSR 可执行 S_IRWXU 可读,写,执行 还可以用数字表示: 4 代表可读 2 代表可写 1 代表可执行 7 代表可读,写,执行例: #incldue <stdio.h>#include<stdlib.h>#include<sys/types.h>#include<sys/s 阅读全文
posted @ 2012-06-26 10:50 xss 阅读(520) 评论(0) 推荐(0)