C语言
文章平均质量分 72
还没认真呢就
这个作者很懒,什么都没留下…
展开
-
linux socket 阻塞式 TCP
SERVER.C /* File Name: server.c */ #include #include #include #include #include #include #include #define DEFAULT_PORT 8000 #define原创 2015-07-17 12:28:22 · 860 阅读 · 0 评论 -
[转]scanf格式控制符的完整格式
scanf格式控制的完整格式: % * m l或h 格式字符 ①格式字符与printf函数中的使用方式相同,以%d、%o、%x、%c、%s、%f、%e,无%u格式、%g格式。 ②可以指定输入数据所占列宽,系统自动按它截取所需数据。如: scanf( "%3d%3d", &a, &b); 输入:123456 系统自动将123转载 2017-11-03 11:21:17 · 1372 阅读 · 0 评论 -
C语言文件操作
C语言文件操作一、标准文件的读写1.文件的打开fopen() 文件的打开操作表示将给用户指定的文件在内存分配一个FILE结构区,并将该结构的指针返回给用户程序,以后用户程序就可用此FILE指针来实现对指定文件的存取操作了。当使用打开函数时,必须给出文件名、文件操作方式(读、写或读写),如果该文件名不存在,就意味着建立(只对写文件而言,对读文件则出错),并将文件指针指向文件开转载 2016-04-05 21:42:35 · 266 阅读 · 0 评论 -
gdb调试list 、vector等容器
GDB中print方法并不能直接打印STL容器中保存的变量,其实只要http://www.yolinux.com/TUTORIALS/src/dbinit_stl_views-1.03.txt这个文件保存为~/.gdbinit 就可以使用它提供的方法方便调试容器 [c-sharp] view plaincopyData type转载 2015-08-21 14:54:18 · 6836 阅读 · 1 评论 -
Linux C 创建新目录,然后转换工作空间到该目录下,并调用wget函数下载文件到新建目录下
#include#include int main (){char wget_cmd[100];char *pathname="/var/www/html/sssnsd/";char buf[50];if(mkdir(pathname, 0777)==-1) { perror("mkdir error");原创 2015-07-23 16:18:09 · 699 阅读 · 0 评论 -
借助tinyxml解析config.xml文件
int read_config(){char config_xml_path[256] = {0};getcwd(config_xml_path, 200);strcat(config_xml_path,"/down1.xml");TiXmlDocument docConfigFile(config_xml_path);if (!docConfigFile.LoadFile原创 2015-08-04 14:12:12 · 381 阅读 · 0 评论 -
stack smashing detected报错
使用环境:ubuntu 11.10、C++出错情景:使用mysql执行一个query语句,以进行一个涉及多个表的联合查询(query语句比较长)代码如下:[cpp] view plaincopychar query[128]={0}; sprintf(query, "....."); ... return myList; 执行结束之后,返转载 2015-07-19 15:57:44 · 1022 阅读 · 0 评论 -
LINUX中system()函数详解
相关函数 fork,execve,waitpid,popen 表头文件 #include 定义函数 int system(const char * string); 函数说明 system()会调用fork()产生子进程,由子进程来调用/bin/sh-c string来执行参数string字符串所代表的命令,此命>令执行完后随即返回原调用的进程。在调用system()期转载 2015-07-19 15:56:39 · 3885 阅读 · 0 评论 -
LINUX中fork()函数详解
一、fork入门知识 一个进程,包括代码、数据和分配给进程的资源。fork()函数通过系统调用创建一个与原来进程几乎完全相同的进程,也就是两个进程可以做完全相同的事,但如果初始参数或者传入的变量不同,两个进程也可以做不同的事。 一个进程调用fork()函数后,系统先给新的进程分配资源,例如存储数据和代码的空间。然后把原来的进程的所有值都复制到新的新进程中,只有少数转载 2015-07-19 15:55:19 · 368 阅读 · 1 评论 -
LINUX select socket编程 TCP
使用select函数可以以非阻塞的方式和多个socket通信。程序只是演示select函数的使用,功能非常简单,即使某个连接关闭以后也不会修改当前连接数,连接数达到最大值后会终止程序。1. 程序使用了一个数组fd_A,通信开始后把需要通信的多个socket描述符都放入此数组。2. 首先生成一个叫sock_fd的socket描述符,用于监听端口。3. 将sock_fd和数组fd_A中不为转载 2015-07-17 12:25:50 · 533 阅读 · 0 评论 -
C语言实现文件复制或者拼接
#include"mp4_hls_convert.h"//获取文件长度int getFileSize(char * strFileName) { FILE * fp = fopen(strFileName, "r"); fseek(fp, 0L, SEEK_END); int size = ftell(fp);原创 2015-07-16 17:36:03 · 2299 阅读 · 0 评论 -
C语言获取文件大小
#include"mp4_hls_convert.h"int getFileSize(char * strFileName) { FILE * fp = fopen(strFileName, "r"); fseek(fp, 0L, SEEK_END); int size = ftell(fp);原创 2015-07-16 17:40:07 · 436 阅读 · 0 评论 -
C语言实现修改文本文件中特定行的实现代码
最近由于项目需要实现修改文件的功能,所以,博主认真查阅了一些资料,但是,很遗憾,并没有太多的收获好的,首先我先叙述下功能要求:其实很简单,就是Shell中sed命令的C语言实现,实现定位到所需要的字段的那一行,之后修改成需要的内容。但是由于C语言是面向过程的语言,需要顺序执行的特点,所以,实现中遇到了很多麻烦,在这里博主将实现的过程描述如下,以便大家参考。问题描述:文本内容:转载 2015-07-16 17:37:17 · 1097 阅读 · 0 评论 -
tail -f |awk|cat实时管道遇到的阻塞问题
awk 中 对于tail f 的文件重定向原创 2016年07月05日 11:21:241556先看一下如下两个命令:tail -f in | awk '{print $0}' 如果我们不断的往 in 中输入,结果是可以输出来的。 第二条命令 awk ‘{print $0}’ in >> out是可以把 in中的内容 打印到 out中的 第三条命令 把如下两个命令结...转载 2018-03-15 20:44:13 · 3622 阅读 · 0 评论