嵌入式C
幸福那一刻我才懂
这个作者很懒,什么都没留下…
展开
-
八 feof
if (g_stp_configure == NULL)return; // 说明此函数不需要返回值strcpy(dev->wifiEth,"eth1"); // 对结构体中的数组赋值,通常采用strcpy while(!feof(fpDevTxt)) // feof(fp)有两个返回值:如果遇到文件结束,函数feof(fp)的值为非零值,否则为0。{char szAr转载 2014-01-03 20:54:34 · 408 阅读 · 0 评论 -
五十三 wifi配置工具
Linux下的iwpriv(iwlist、iwconfig)的简单应用分类: iwpriv、iwlist 、iwconfig Linux 编程2012-01-18 20:00 12300人阅读 评论(17) 收藏 举报linuxencryptionauthentication网络signal破解无线网络飞速发展的今天,许多设备都提供了连接无线网络的功能。那么Li转载 2014-02-18 11:08:38 · 665 阅读 · 0 评论 -
五十七 小知识
wpa_supplicant是什么东西?wpa_supplicant本是开源项目源码,被谷歌修改后加入android移动平台,它主要是用来支持WEP,WPA/WPA2和WAPI无线协议和加密认证的,而实际上的工作内容是通过socket(不管是wpa_supplicant与上层还是wpa_supplicant与驱动都采用socket通讯)与驱动交互上报数据给用户,而用户可以通过socket发送命转载 2014-02-18 13:26:18 · 318 阅读 · 0 评论 -
二十五 Linux stat函数讲解:
表头文件: #include #include 定义函数: int stat(const char *file_name, struct stat *buf); 函数说明: 通过文件名filename获取文件信息,并保存在buf所指的结构体stat中返回值: 执行成功则返回0,失败返回-1,错误代码存于errno错误代码:转载 2014-01-04 19:17:25 · 340 阅读 · 0 评论 -
十六 sockaddr_in , sockaddr , in_addr区别
struct sockaddr { unsigned short sa_family; char sa_data[14]; }; 上面是通用的socket地址,具体到Internet socket,用下面的结构,二者可以进行类型转换转载 2014-01-03 21:05:45 · 492 阅读 · 0 评论 -
十四 setsockopt函数使用
nt setsockopt (SOCKET s, int level, int optname, const char FAR * optval, int optlen );The Windows Sockets setsockopt function转载 2014-01-03 21:03:47 · 702 阅读 · 0 评论 -
四十一 fgets和gets的区别
在编程中发现gets和fgets一些区别总结一下;1、 fgets比gets安全,使用gets编译时会警告为了安全,gets少用,因为其没有指定输入字符的大小,限制输入缓冲区得大小,如果输入的字符大于定义的数组长度,会发生内存越界,堆栈溢出。后果非常怕怕 fgets会指定大小,如果超出数组大小,会自动根据定义数组的长度截断。(redhat9.0实验并不是转载 2014-01-09 19:25:07 · 487 阅读 · 0 评论 -
五十五 source insight 的快捷键
退出程序 : Alt+F4重画屏幕 : Ctrl+Alt+Space完成语法 : Ctrl+E复制一行 : Ctrl+K恰好复制该位置右边的该行转载 2014-02-18 11:24:30 · 385 阅读 · 0 评论 -
六十八
写了段代码char *starttime1 = strstr(p,"StartTime");starttime1 +=10;char *starttime2 = strstr(starttime1,"StartTime");starttime2 -=2;char tmp2[50] = {0};memcpy(tmp2,starttime1,starttime2-startti原创 2014-08-12 15:07:27 · 305 阅读 · 0 评论 -
四.设备某一参数的标示方法。 一般是结构体,结构体嵌套结构体
/********************OSD隐私保护参数***********************/struct PRITOSD{unsigned short X; //x轴座标unsigned short Y; // y轴座标unsigned short Width; //宽度unsigned short Height; //高度un转载 2014-01-03 20:46:36 · 565 阅读 · 0 评论 -
二十七 fopen 中 按文本读写与按二进制读写 实例
1 #include 2 3 int main(int argc, char *argv[]) 4 { 5 char he[20] = "hello world\n"; 6 7 FILE *outfile = fopen("t.txt", "wt"); 8 fwrite(he, sizeof转载 2014-01-04 19:19:12 · 426 阅读 · 0 评论 -
十五 send,recv,sendto,recvfrom
send函数int send( SOCKET s, const char FAR *buf, int len, int flags ); 不论是客户还是服务器应用程序都用send函数来向TCP连接的另一端发送数据。客户程序一般用send函数向服务器发送请求,而服务器则通常用send函数来向客户程序发送应答。该函数的第一个参数指定发送端套接字描述符;第二个参数指转载 2014-01-03 21:05:06 · 388 阅读 · 0 评论 -
四十七 iptables 命令介绍
iptables防火墙可以用于创建过滤(filter)与NAT规则。所有Linux发行版都能使用iptables,因此理解如何配置iptables将会帮助你更有效地管理Linux防火墙。如果你是第一次接触iptables,你会觉得它很复杂,但是一旦你理解iptables的工作原理,你会发现其实它很简单。首先介绍iptables的结构:iptables -> Tables -> Chains转载 2014-01-18 14:05:14 · 393 阅读 · 0 评论 -
五十二 对于按位存储的编译器优化
#include int main(){typedef struct {int a:1;int b;}test;test hhe;printf("%d\n",sizeof(hhe));}// 8个字节#include int main(){typedef struct {char a:1 ;char b:3 ;原创 2014-02-14 16:34:25 · 560 阅读 · 0 评论 -
六十七
fd = open("/dvs/devHardware.txt", 0); if(fd { printf("Open devHardware error!\n"); return -1; }else{printf("check_sensor_Version\n");read(fd, s, 1024);if (st转载 2014-06-19 11:29:46 · 395 阅读 · 0 评论 -
杂项
while (stp_rtp_convert->iThreadControl == 1){if (stp_rtp_convert->iConvertStart != 0){ if (pcFrameBuf == NULL)pcFrameBuf = malloc(0x40000);if (pcFrameBuf == NULL){printf("can not allo转载 2014-06-06 21:32:34 · 352 阅读 · 0 评论 -
四十八 iptables 命令
原文链接查看iptables当前规则#iptables -L -n建立规则#iptables -A INPUT -s xxx.xxx.xxx.xx -p tcp --dport 80 -j DROP移除规则#iptables -D INPUT -s xxx.xxx.xxx.xx -p tcp --dport 80 -j DROP常用操作命令:转载 2014-01-18 14:06:34 · 390 阅读 · 0 评论 -
四十五 atoi,atol,strtod,strtol,strtoul详解
atof(将字符串转换成浮点型数)相关函数atoi,atol,strtod,strtol,strtoul表头文件#include “stdlib.h"定义函数double atof(const char *nptr);函数说明atof()会扫描参数nptr字符串,跳过前面的空格字符,直到遇上数字或正负符号才开始做转换,而再遇到非数字或字符串结束时('/0')才结束转转载 2014-01-10 18:43:50 · 671 阅读 · 0 评论 -
三.char 与 unsigned char的本质区别
在C中,默认的基础数据类型均为signed,现在我们以char为例,说明(signed) char与unsigned char之间的区别 首先在内存中,char与unsigned char没有什么不同,都是一个字节,唯一的区别是,char的最高位为符号位,因此char能表示-128~127, unsigned char没有符号位,因此能表示0~255,这个好理解,8个bit,最多256种情况,转载 2014-01-03 20:45:11 · 632 阅读 · 0 评论 -
三十 _FILE__,__LINE__,FUNCTION__实现代码跟踪调试
#include "global.h" int main(int argc, char **argv) { printf("%s(%d)-%s: this is main\n",__FILE__,__LINE__,__FUNCTION__); funca(); printf("%s(%d)-%s: this is main转载 2014-01-04 19:26:54 · 388 阅读 · 0 评论 -
二十九 多线程编程
pthread_cancel(3) 2007-11-20 09:14 星期二PTHREAD_CANCEL(3) 名称 pthread_cancel, pthread_setcancelstate, pthread_setcanceltype, pthread_testcancel – 取消线程 大纲 #include int pthr转载 2014-01-04 19:25:26 · 516 阅读 · 0 评论 -
二十 关于gmtime、gmtime_r、localtime、localtime_r
测试环境:vmware 7 + Redhat5.5,系统时间使用UTC,时区为上海。 1、函数功能介绍 使用man gmtime或man localtime都可以的得到这几个函数的介绍。原型如下: struct tm *gmtime(const time_t *timep); struct tm *gmtime_r(const time_t转载 2014-01-03 21:10:53 · 2987 阅读 · 0 评论 -
四十六 枚举类型 --- 一般不用。麻烦
枚举类型的使用方法分类: C++2011-05-05 10:46 4640人阅读 评论(1) 收藏 举报suncgcc1. 枚举的定义枚举类型定义的一般形式为: enum 枚举名{ 枚举值表 }; 在枚举值表中应罗列出所有可用值。这些值也称为枚举元素。 例如: 该枚举名为weekday,枚举值共有7个,即一周中的七天。凡被说明为weekday类型变量转载 2014-01-10 19:23:28 · 426 阅读 · 0 评论 -
六十五 小问题
//int TimeCount=1;//int MaxSpeed=7;static int SetSpeed(unsigned int speed)// 1~100{int TimeCount=1000; TimeCount=TimeCount*speed;printk("TimeCount is %d\n\n",TimeCount);hireg_write原创 2014-05-19 08:08:51 · 370 阅读 · 0 评论 -
六 fgets()函数
原型是char *fgets(char *s, int n, FILE *stream); *s: 字符型指针,指向将存储到的数据地址。 n: 整型数据,将从流中读取 n - 1 个字符。 *stream: 指针数据,欲读取的流。 功能: 从文件指针stream中读取n-1个字符,存到以s为起始地址的空间里,直到读完一行,如果成功则返回s的指针,否则返回NULL。转载 2014-01-03 20:52:17 · 419 阅读 · 0 评论 -
十七 struct timeval结构体 以及 gettimeofday()函数
一、struct timeval结构体struct timeval结构体在time.h中的定义为:1 struct timeval2 {3 __time_t tv_sec; /* Seconds. */4 __suseconds_t tv_usec; /* Microseconds. */5 };其中,tv_sec为Epoch到创建struct time转载 2014-01-03 21:06:51 · 642 阅读 · 0 评论 -
四十三 fgetchar() 与 getch()
函数名: getchar 功 能: 从stdin流中读字符 用 法: int getchar(void); 注: getchar有一个int型的返回值.当程序调用getchar时.程序就等着用户按键.用户输入的字符被存放在键盘缓冲区中.直到用户按回车为止(回车字符也放在缓冲区中).当用户键入回车之后,getchar才开始从stdin流中每次读入一个字符.getchar函数的转载 2014-01-09 20:07:58 · 1488 阅读 · 1 评论 -
四十 创建rtp头 注意位的存储方式
typedef struct RTP_{unsigned int cc : 4;unsigned int x : 1;unsigned int p : 1;unsigned int ver : 2;unsigned int pt : 7;unsigned int m : 1;unsigned int seq : 16;unsigned int ts;unsi原创 2014-01-04 19:44:32 · 505 阅读 · 0 评论 -
三十六 fflush(stdout);
#include #include #include void *fuc(){printf("hehe\n"); // 没有\n 没有fflush 5个“hehe”将在最后程序结束时打印fflush(stdout);} int main(){int i;for(i=0;i{pthread_t haha; // 重复定义可以,因为在f原创 2014-01-04 19:35:56 · 379 阅读 · 0 评论 -
十二 fopen与读写的标识r,r+,rb+,rt+,w+.....
函数简介 函数功能: 打开一个文件 函数原型:FILE * fopen(const char * path,const char * mode); 相关函数:open,fclose,fopen_s[1] ,_wfopen 所需库: stdio.h> 返回值: 文件顺利打开后,指向该流的文件指针就会被返回。若果文件打开失败则返回NULL,并把错误代码存在errno 中。转载 2014-01-03 20:59:44 · 615 阅读 · 0 评论 -
九 switch()
unsigned char getFormatToMedia(unsigned char resolution){ unsigned char cRet; switch(resolution) // switch语句的判断条件可以接受int,byte,char,short, enum不能接受其他类型. { // switch之后是在大括号中进行判断。所以switc转载 2014-01-03 20:55:42 · 497 阅读 · 0 评论 -
三十三 用户程序中的睡眠:
sleep() usleep() nanosleep() sleep()和nanosleep()都是使进程睡眠一段时间后被唤醒,但是二者的实现完全不同。 Linux中并没有提供系统调用sleep(),sleep()是在库函数中实现的,它是通过调用alarm()来设定报警时间,调用sigsuspend()将进程挂起在信号SIGALARM上,sleep()只转载 2014-01-04 19:30:23 · 406 阅读 · 0 评论 -
64 #ifdef __cplusplus extern "C" { #endif 的解释
在看代码时看到如下的代码:#ifdef __cplusplusextern "C" {#endif 时常在cpp的代码之中看到这样的代码:#ifdef __cplusplusextern "C" {#endif//一段代码#ifdef __cplusplus}#endif 这样的代码到底是什转载 2014-05-04 16:28:24 · 338 阅读 · 0 评论 -
六十一 C与指针笔记001
1 \? 在书写连续多个问号时使用,防止它们被解释为三个字母词\'' 用于标示一个字符串常量内部的双引号\' 用于表示字符常量'\\ 用于表示一个反斜杠,防止被解释为一个转义序列符2 在C语言中有4种基本数据类型:整型 浮点型 指针 聚合类型(如数组和结构体)3 浮点数家族包括float ,double, long double类型。所有浮点类型至少能容纳从10原创 2014-02-18 19:47:42 · 431 阅读 · 0 评论 -
五十八 wait和waitpid详解
wait的函数原型是: #include#include pid_t wait(int *status) 进程一旦调用了wait,就立即阻塞自己,由wait自动分析是否当前进程的某个子进程已经退出,如果让它找到了这样一个已经变成僵尸的子进程, wait就会收集这个子进程的信息,并把它彻底销毁后返回;如果没有找到这样一转载 2014-02-18 13:29:38 · 443 阅读 · 0 评论 -
二十三 strtoul函数
unsigned long int strtoul(const char *nptr, char **endptr, int base);先介绍下strtoul函数,它会从一个数字字符或是正负号字符开始,直到遇见非数字字符或字符串,停止读取,将已读取到的数字字符串,按照base指定的进制方式,转化为长整型数,nptr会指向停止时读取的位置,即读取过程中遇到的非数字字符或字符串的位置。这个地方也转载 2014-01-04 18:59:05 · 1118 阅读 · 0 评论 -
二十一 isspace
isgraph 表头文件 #includectype.h> 定义函数 int isspace(int c) 函数说明 检查参数c是否为空格字符,也就是判断是否为空格(' ')、水平定位字符 ('\t')、归位键('\r')、换行('\n')、垂直定位字符('\v')或翻页('\f')的情况。[1]注意:不会判断\0 返回值 若参数c转载 2014-01-03 21:12:14 · 423 阅读 · 0 评论 -
十八 C 中的 mktime stime
功能将时间转换为自1970年1月1日以来失去时间的秒数,发生错误时返回-1.相关函数time,asctime,gmtime,localtime表头文件#include 定义函数time_t mktime(struct tm * timeptr);函数说明mktime()用来将参数timeptr所指的tm结构数据转换成从公元1970年1月1日0时0分0 秒算起至今转载 2014-01-03 21:08:02 · 555 阅读 · 0 评论 -
四十二 fputs 与 puts()
fputs编辑词条目录1 概述2 程序例1 概述编辑本段 函数名: fputs功 能:向指定的文件写入一个字符转载 2014-01-09 19:38:50 · 792 阅读 · 0 评论 -
三十八 lseek()
如果有程序 int main(void) { if(lseek(STDIN_FILENO,0,SEEK_CUR)==-1) printf("can't seek\n"); ele printf("seek ok"); return 0; } cat 和./a.out 有什么区别啊 希望能讲的详细点,谢谢 12345转载 2014-01-04 19:39:34 · 389 阅读 · 0 评论