C程序设计语言
yuesichiu
目前负责相机功能开发,工作内容主要包括拍照、录像、相册浏览、图像融合等工作
展开
-
K&R的名著:<C程序设计语言>小程序总结1
1、删除字符串s中出现的所有字符squeeze(char s[ ], int c)void squeeze_test(char str[],int c) { int i,j; for (i=j=0;str[i] !='\0'; i++) if (str[i] !=原创 2012-10-06 18:36:40 · 1175 阅读 · 0 评论 -
K&R的名著:<C程序设计语言>小程序总结3
1、printd函数:打印十进制数n/*用于解决低位先于高位生成,但是必须与此向反的秩序打印*/void printd(int n){ if (n putchar('-'); n = - n; if (n / 10) printd(n / 10); putchar(n%10 + '0');}2、快原创 2012-10-08 22:34:26 · 2703 阅读 · 0 评论 -
K&R的名著:<C程序设计语言>小程序总结6
1、指向数组的指针与指针数组int (*p)[10]; // 指向数组的指针:p是一个指针,p指向一个由10个元素组成的数组int *p[10]// p先与[]结合,表示p是个数组,这个数组的每一个元素都是int*的指针。#include#includevoid main(void){ void sort(char (*p)[6]); int i;原创 2012-10-13 16:39:59 · 2075 阅读 · 0 评论 -
K&R的名著:<C程序设计语言>小程序总结5
1、readlines函数:读取输入行int readlines(char *lineptr[], int maxlines){ int len, nlines; char *p, line[MAXLEN]; nlines = 0; while ((len = getline(line, MAXLINE)) > 0)原创 2012-10-11 16:43:52 · 2780 阅读 · 0 评论 -
16道嵌入式C语言面试题
16道嵌入式C语言面试题 1. 用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题)#define SECONDS_PER_YEAR (60 * 60 * 24 * 365)UL 我在这想看到几件事情: 1). #define 语法的基本知识(例如:不能以分号结束,括号的使用,等等) 2). 懂得预处理器将为你计算常数表达转载 2012-10-31 22:17:08 · 1026 阅读 · 0 评论 -
K&R名著<C程序设计语言>p103函数指针:串联以前小程序
#include #include #define MAXLINES 5000char *lineptr[MAXLINES];int readlines(char*lineptr[], int nlines);void writelines(char *lineptr[], int nlines);void qsort1(char*lineptr[],int l原创 2012-10-21 10:18:08 · 1962 阅读 · 0 评论 -
K&R的名著:<C程序设计语言>小程序总结p117统计关键字
#include #include #include #define MAXWORD 10#define NKEYS (sizeof keytab / sizeof keytab[0])struct key{ char *word; int count;}keytab[]={ {"auto",0}, {"break",0}, {"case原创 2012-10-17 21:30:39 · 2084 阅读 · 0 评论 -
K&R的名著:<C程序设计语言>自引用结构
自引用结构任务:统计输入中所有出现单词的次数。两种解决方法:、在读取输入中任意单词的同时,就将它放置到正确的位置,从而始终保证所有单词是按顺序排列的。、采用一种二叉树的数据结构每个不同的单词在树中都是一个节点,每个节点包括:一个指向该单词内容的指针一个统计出现次数的计数值一个指向左子树的指针一个指向右子树的指针任何节点最多拥有两个子树,也可能只有一个子树或一原创 2012-11-15 21:41:25 · 1277 阅读 · 0 评论 -
一种判断处理器大/小端的程序
一款CPU是大还是小端,关系到程序的存储,识别它是嵌入式系统中很重要的环节。1、大端比如SUN公司、摩托罗拉公司的处理器IBM-370S和PDP-10S均是大端。网络上传输的也是大端。地址7305985 出存放的内容是十六进制0x04030201。那么:/* x[0] = 0x04 *//* x[1] = 0x03 *//* x[2] = 0x02 *//* x[3]原创 2013-06-09 18:14:30 · 986 阅读 · 0 评论 -
C专家编程之编译器日期被破坏程序
#include#include#include#include#define CHOICE 2#define FILEPATH "/root/date.c"char global_buffer[120];//NO.1 使用全局声明的数组#if CHOICE == 1char *local_time(char* filename){ struct tm原创 2014-08-02 12:30:54 · 1072 阅读 · 0 评论 -
C专家编程之为什么C语言把数组形参当做指针:数组/指针实参
#includevoid print_array_test(char ca[]){ printf("ca : %s\n",ca); printf("&ca : %s\n",&ca); printf("&(ca[0]) : %s\n",&(ca[0])); printf("&(ca[1]) : %s\n",&(ca[1]));原创 2014-08-04 17:10:28 · 2676 阅读 · 0 评论 -
Linux C语言中sscanf 的详细用法
sscanf() - 从一个字符串中读进与指定格式相符的数据.[cpp] view plaincopyprint?函数原型: Int sscanf( string str, string fmt, mixed var1, mixed var2 ... ); int scanf( const char *format [,argument]... );转载 2014-10-28 11:50:49 · 19422 阅读 · 0 评论 -
C语言:分清函数指针和指针函数
关于指针和数组斩不断理还乱的恩怨还真是说了不少,不过现在应该已经理清了。有了上一讲的基础,本讲的内容相对来说就比较容易理解了。1.指向函数的指针(函数指针)来分析这样一个声明,void (*f) ( ); 虽然()的优先级高于*,但由于有括号存在,首先执行的是解引用,所以f是一个指针;接下来执行( ),表明f指向一个函数,这个函数不返回任何值。现在得出结论:f是一个指向不接受参数且不返回任转载 2012-10-19 22:31:42 · 869 阅读 · 0 评论 -
K&R的名著:<C程序设计语言>小程序总结8结构体
1、结构的基础知识结构是一个一个或多个变量的集合,关键字struct引入结构声明。例如:struct point { int x; int y;}A,B;point 是结构标记,A,B是变量表。它的初始化可以如下:struct point pt;struct point pt = {320,240};结构还可以嵌套.struct rec原创 2012-10-16 20:51:36 · 2093 阅读 · 0 评论 -
EOF与getchar
大师级经典的著作,要字斟句酌的去读,去理解。以前在看K&R的The C Programming Language(SecondEdition)第1.5节的字符输入/输出,被getchar()和EOF所迷惑了。可能主要还是由于没有搞清楚getchar()的工作原理和EOF的用法。因此,感觉很有必要总结一下,不然,很多琐碎的知识点长时间过后就会淡忘的,只有写下来才是最好的方法。其实,g转载 2012-10-07 22:50:37 · 570 阅读 · 0 评论 -
K&R的名著:<C程序设计语言>小程序总结2
1、push函数:把f压入到值栈中#define MAXVAL 100int sp = 0;double val[MAXVAL];void push(void){ if (sp < MAXVAL) val[sp++] = f; else printf("error: stack full, can't push %g\原创 2012-10-07 20:59:10 · 830 阅读 · 0 评论 -
K&R的名著:<C程序设计语言>小程序总结4
1、getint函数:将输入中的下一个整型数赋值给*pn#includeint getch(void);void ungetch(int);int getint(int *pn){ int c, sign; while (isspace(c = getch())) ; if (!isdigit(c) && c != EOF原创 2012-10-10 15:19:38 · 2672 阅读 · 0 评论 -
K&R的名著:<C程序设计语言>小程序总结7指针
1、有效的指针运算包括:相同类型指针之间的赋值运算;指针同整数之间的加法或减法运算;指向相同数组中元素的两个指针间的减法或比较运算;将指针赋值为0或指针与0之间的比较运算。例1:#define ALLOCSIZE 10000static char allocbuf[ALLOCSIZE];static char *allocp = allocbuf; char *alloc(原创 2012-10-16 20:07:35 · 761 阅读 · 0 评论 -
C程序增加自定义的error输出/打印函数
static int error(char *fmt, ...) __attribute__ ((format(printf, 1, 2)));static int error(char *fmt, ...){ int res; static int shown=0; va_list ap; if (!shown) {原创 2015-05-31 11:43:18 · 1016 阅读 · 0 评论