[C]文件定宽换行工具

2018-3-30 写技术

弄了几篇英语文章,想要在Linux下阅读,可是发现没有换行,每一段都是从左到右一整行,于是写下这个小工具,实现自动换行: #include <stdio.h> #include <stdlib.h> #include <string.h> void main( int argc, char *argv[]){ FILE *fp_in = 0; FILE *fp_out = 0; char str[1024]={0}; char file_out[512]={0}; int len = 0; int i = -1; ...

阅读全文>>

标签: C

评论(0) 浏览(146)

[c]scanf输入字符

2018-1-18 写技术

如果用scanf("%c",&ch),那么程序不会忽略为了输入而按下的回车键操作,而是认为回车键是后续操作而继续相应;而scanf(" %c", &c)在%c之前空格会告诉scanf忽略前面的空行,而等待第一个非空行元素读入其中。

阅读全文>>

标签: C

评论(0) 浏览(153)

[C]Example of websockets server

2017-10-23 写技术

#include <stdlib.h> #include <stdio.h> #include <string.h> #include <unistd.h> #include <sys/socket.h> #include <netinet/in.h> #include <arpa/inet.h> #include <openssl/sha.h> #include <openssl/pem.h> #include <openssl/bio.h> #incl...

阅读全文>>

标签: C

评论(0) 浏览(186)

[C]Safari对websocket的支持及websocket版本问题的解决记

2017-7-11 写技术

昨天有人反应苹果手机不能访问我的物联网项目,我大惊,立马开始分析。 发现果然苹果端的safari连接websocket失败了。但是我确信之前一直用着好好的。可能是贱贱的A厂悄悄变更了某些软件吧,没办法,谁让世人都称他是老大,谁让你们那么多人没有iPhone不行呢。我只好认为我自己的服务器有问题了。 于是检查服务器的日志,发现websocket的握手过程显示协议错误。 那么我抓包分析下safari与其他浏览器的行为有什么不一样吧: 这是Google: Sec-WebSocket-Key:GX2sEWmKLhgktWvslt8xxw== Sec-WebSocket...

阅读全文>>

标签: ubuntu C linux

评论(0) 浏览(268)

[c]数组与字符串长度

2017-3-16 写技术

来看看在C语言里面字符串与数组的长度怎么取得吧,不多说,上代码: char *str="abcdefg"; char strq[10] = "abcdefg"; printf("%d %d\n", sizeof(str), strlen(str)); printf("%d %d\n", sizeof(strq), strlen(strq)); 结果是: 8        7 10       &...

阅读全文>>

标签: C

评论(0) 浏览(240)

[c]linux下构建lib库

2016-11-24 写技术

来来来,新技能,linux下构建lib库的步骤: 1、准备库函数源文件; my_add.c int add(int a, int b){ printf("Here is my_add.c\n"); return a+b; } my_sub.c int sub(int a, int b){ printf("Here is my_sub.c \n"); return a-b; } 2、生成目标文件; gcc -c my_add.c...

阅读全文>>

标签: C linux

评论(0) 浏览(335)

[c]mosquitto编码实现websockets协议

2016-10-20 写技术

mosquitto虽然本身是支持websockets协议的,但却依懒libwebsockets库,而libwebsockets库是基于poll的,所以如果想把mosquitto改为epoll模式很容易,却不能兼容websockets了。 为了解决这个纠结的问题,这几天把websockets协议用C语言重新实现了一遍,然后将mosquitto中调用libwebsockets的部分用自己的代码取代,今天终于实现了websockets下的mqtt通讯功能。 首先一些websockets的结构放在websockets.h中: typedef struct _WebSo...

阅读全文>>

标签: C linux

评论(0) 浏览(475)

[c]uthash

2016-10-14 写技术

An example about uthash #include "uthash.h" #include <stdlib.h> /* malloc */ #include <stdio.h> /* printf */ typedef struct _user_t { int id; char name[25]; UT_hash_handle hh; } USER_T,*PUSER_T; void main() { int i; PUSER_T user, users=NULL; ...

阅读全文>>

标签: C

评论(0) 浏览(322)

[c]strtok_r,strtok_s, _strtok_s_l, wcstok_s, _wcstok_s_l, _mbstok_s, _mbstok_s_l

2016-10-11 写技术

On the first call to strtok_s the function skips leading delimiters and returns a pointer to the first token in strToken, terminating the token with a null character. More tokens can be broken out of the remainder of strToken by a series of calls to strtok_s. Each call to strtok_s modifies strToken ...

阅读全文>>

标签: C

评论(0) 浏览(335)

[c]构造合法身份证

2016-6-27 写技术

#include <stdio.h> #define LEN 18 void main(){ char id[LEN] = {0}; int weight[] = {7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2}; int validate[] = {1,0,'x'-'0',9,8,7,6,5,4,3,2,1}; int i=0; int sum = 0; printf("Input your id\n"); ...

阅读全文>>

标签: C

评论(0) 浏览(325)

Powered by anycle 湘ICP备15001973号