Basic knowledge of C
文章平均质量分 69
hou_sky
负责调试camera效果,Qualcomm&MTK Platform
展开
-
C语言之strncpy函数
【FROM MSDN && 百科】原型:char * strncpy(char *dest, char *src, size_t n);#include功能:将字符串src中最多n个字符复制到字符数组dest中(它并不像strcpy一样只有遇到NULL才停止复制,而是多了一个条件停止,就是说如果复制到第n个字符还未遇到NULL,也一样停止),返回指向dest的指针。原创 2013-01-04 15:27:25 · 14453 阅读 · 0 评论 -
C语言EOF了解
【FORM MSDN &&百科】EOF--end of file EOF is returned by an I/O routine when the end-of-file (or in some cases, an error) is encountered.在while循环中以EOF作为文件结束标志,这种以EOF作为文件结束标志的文件,必须是文本文件。在文本文件中,数据都是原创 2012-12-21 13:47:07 · 1252 阅读 · 0 评论 -
C语言之memmove函数
【FROM MSDN && 百科】原型: void *memmove( void* dest, const void* src, size_tcount );#include由src所指内存区域复制count个字节到dest所指内存区域。src和dest所指内存区域可以重叠,但复制后dest内容会被更改。函数返回指向dest的指针。Copi原创 2013-01-05 16:24:42 · 24243 阅读 · 7 评论 -
C语言之memcpy函数
【FROM MSDN && 百科】原型: void *memcpy(void *dest, const void *src, size_t n);#include功能:从源src所指的内存地址的起始位置开始拷贝n个字节到目标dest所指的内存地址的起始位置中Copies the values of num bytes from the location point原创 2013-01-05 12:10:37 · 48236 阅读 · 0 评论 -
C语言之memset函数
【FROM MSDN && 百科】原型: void *memset(void *s,int ch,size_t n);#include将 s 中前 n 个字节用 ch 替换并返回 s 。说明memset是按字节赋值的。Sets the first num bytes of the block of memory pointed by ptr to th原创 2013-01-05 17:32:50 · 19630 阅读 · 0 评论 -
C语言程序设计字符串内容反转
【FROM C程序设计语言3-5】#include #include #include #include char* reverse(char s[]);int main(void){ char *str=(char*)malloc(sizeof(char)*256); gets(str); printf("%s\n",str); printf("reverse原创 2012-12-20 14:47:11 · 814 阅读 · 0 评论 -
C语言之strncat函数
【FROM MSDN && 百科】原型: char *strncat(char *dest,const char *src,int n);#include功能:把src所指字符串的前n个字符添加到dest结尾处(覆盖dest结尾处的'\0')并添加'\0'。DEMO:实现自己的strncat函数#include #include原创 2013-01-04 16:11:18 · 9886 阅读 · 0 评论 -
C语言字符串转换为相应的整型数
#include /*字符串转换为相应的整型数*/int myatoi(const char s[]){ int i,n=0; for (i=0;s[i]>='0'&&s[i]<='9';i++) { n=10*n+(s[i]-'0'); /*(s[i]-'0')能够计算出s[i]中存储的字符所对应的数字值*/ } return n;}int main(void){原创 2012-12-19 16:10:23 · 5638 阅读 · 0 评论 -
C语言程序设计语言统计字符出现的次数
【FROM C程序设计语言3.4】#include #include int main(void){ int c,i,nwhite,nother,ndigit[10]; nwhite=0; nother=0; for (i=0;i<10;i++) { ndigit[i]=0; } while((c=getchar())!=EOF) { switch (c)原创 2012-12-20 14:16:58 · 2299 阅读 · 0 评论 -
C语言折半查找DEMO
【C语言折半查找】#include #include int binserarch(int x,int v[],int n);int main(void){ int v[]={10,20,30,40,50,60}; /*由小到大排序好的数据*/ int x; /*存放要查找的数*/ int arr_size; in原创 2012-12-20 11:40:47 · 586 阅读 · 0 评论 -
C语言求其字符数组的长度
求其字符串的长度DEMO#include #include #include /*求字符数组s的长度,参数为字符数组*/int mystrlen(const char s[]){ int i=0; if (s==NULL) { return 0; } while(s[i]!='\0') { ++i; } return i;}/*指针实现求其原创 2012-12-19 15:32:58 · 8621 阅读 · 0 评论 -
C语言改写与for循环等价的循环语句
【FROM C程序设计语言第二章练习2-2】在不使用运算符&&或||的条件下编写一个与上面的for循环等价的循环语句原语句如下:for (i=0; is[i] = c;for (i=0;i<lim-1;i++) { if ((c=getchar())=='\n') { break; } else if (c==EOF) {原创 2012-12-19 14:52:30 · 2113 阅读 · 0 评论 -
C语言奇偶数判断及三目运算符了解
求一个数是奇偶数的DEMO条件运算符是惟一的一个三目运算符,条件运算符是向右结合的,也就是说,从右向左分组计算。#include int is_even(int x);int main(){ int src; printf("输入一个整数:"); scanf("%d",&src); if (is_even(src)) { printf("%d偶数\n",原创 2012-12-11 11:13:48 · 3714 阅读 · 0 评论 -
C语言求其二进制位1的个数
【FROM C程序设计语言2_10】#include #include int bitcount(unsigned int x){ int b; int mid; for (b=0;x!=0;x>>=1) { mid=x & 01; if (mid) { b++; } } return b;}int main(void){ int n原创 2012-12-19 17:29:54 · 712 阅读 · 0 评论 -
C语言之strcoll函数
【FROM MSDN && 百科】原型: int strcoll(const char *s1,const char * s2);#include比较字符串s1和s2。功能和strcmp类似,用法也一样.特别注意:strcoll()会依环境变量LC_COLLATE所指定的文字排列次序来比较s1和s2 字符串。strcmp是根据ASCII来比较2个串原创 2012-12-28 15:33:36 · 2104 阅读 · 0 评论 -
C语言NULL了解
【FROM MSDN &&百科】NULL指针NULL is the null-pointer value used with many pointer operations and functions. It is equivalent to 0.NULL is defined in the following header files: CRTDBG.H, LOCALE.H, STD原创 2012-12-18 15:34:13 · 4365 阅读 · 0 评论 -
C语言求其文件名长度DEMO
#include #include int wstrlen(const char* str);int main(void){ int len,len1; char sfilename[21]; printf("请输入文件名:"); gets(sfilename); len=wstrlen(sfilename); printf("len = %d\n",len); getch(原创 2012-12-18 11:00:33 · 1118 阅读 · 0 评论 -
C语言之memcmp函数
【FROM MSDN && 百科】原型: int memcmp(const void *buf1, const void *buf2, unsigned int count);#include比较内存区域buf1和buf2的前count个字节。此函数是按字节比较。Compares the first num bytes of the block of memo原创 2013-01-06 10:35:22 · 8698 阅读 · 1 评论 -
C语言之memchr函数
【FROM MSDN && 百科】原型: const void * memchr ( const void * ptr, int value, size_t num ); void * memchr ( void * ptr, int value, size_t num );#include从buf所指内存区域的前count个字原创 2013-01-06 11:30:31 · 8118 阅读 · 0 评论 -
C语言之函数返回值的问题
【FROM: http://zhidao.baidu.com/question/327940855.html】char str[]="hello"; 和 char *str="hello"; 不一样。char str[]="hello"; 是在动态变量区中开辟了可以容纳6个字符的数组,数组名叫str。同时将字符串"hello"(原存放于常数空间)拷贝到这个数组空间中去作为数组的初始原创 2013-01-05 14:47:19 · 1375 阅读 · 0 评论 -
C语言之strcpy函数
【FROM MSDN && 百科】原型:char *strcpy(char *dest,const char *src);#include把从src地址开始且含有NULL结束符的字符串复制到以dest开始的地址空间。src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串。返回指向dest的指针。DEMO:实现自己的strcpy函数原创 2012-12-26 15:40:21 · 5646 阅读 · 0 评论 -
类和对象的区别
笔试题之三:类和对象的区别类是对象的抽象,对象是类的具体实例。类是抽象的,不占用内存,而对象是具体的,占有内存空间。例如:类就是水果,对象就是苹果。继承与多态多态性指用一个名字定义不同的函数,这函数执行不同但又类似的操作,从而实现“一个接口,多种方法”。多态性的实现与静态联编 动态联编有关。静态联编支持的多态性称为编译时的多态性,也称静态多态性,它可以通过函数重原创 2013-03-08 17:24:58 · 26110 阅读 · 1 评论 -
辞职了
2月底把工作给辞掉了,现在休息了一周,是该准备找工作的时候了。是该寻求改变的时候了。不能再闲下去了。下一份工作:C,软件开发原创 2013-03-08 16:13:32 · 1057 阅读 · 0 评论 -
new/delete和malloc/free的区别?
笔试题之二:new/delete和malloc/free的区别最大的区别是对对象的理解。Foo *foo =malloc (sizeof(Foo)); //Foo是一个类初始化:那么你将不会调用Foo的构造方法,而只是单纯的分配空间,而且我们只认为你是分配一个空间,而不是想创新一个对象。Foo *foo = new Foo();则会调用Foo的构造方法来初始化这个对象,也就是原创 2013-03-08 16:50:28 · 1081 阅读 · 0 评论 -
delete和delete[]的区别
笔试题之一:delete和delete[]的区别是什么呢?如果ptr代表一个用new申请的内存返回的内存空间地址,即所谓的指针,那么:delete ptr 代表用来释放内存,且用来释放ptr指向的内存。delete []ptr用来释放ptr所指向的内存,还逐一调用数组中每个对象的destructor。对于像int / char / int * /struct等等简单数据类型,由于对原创 2013-03-08 16:29:11 · 1011 阅读 · 0 评论 -
求字符串长度,实验题
DEMO:#define FIRST_DEMO//#define SECOND_DEMO//#define THIRD_DEMO//#define FOUTH_DEMO//#define FIVTH_DEMO/************************************************************************//* ** Filena原创 2013-01-22 18:01:07 · 2101 阅读 · 1 评论 -
《C语言深度解培》读书笔记之四
什么是指针?什么是数组?指针与数组的关系?int *p;p为指针变量,p里存储的内存地址的内存称为p所指向的内存。指针变量p里存储的任何数据都将被当作地址来处理。“*”号前面的数据类型只是说明指针所指向的内存里存储的数据类型。所以在32位系统下,不管什么样的指针类型,其大小都为4bytes。可以用sizeof来进行测试。int *p=NULL 和 *p=NULL 有原创 2013-01-25 15:49:19 · 1381 阅读 · 0 评论 -
C语言之strlen函数
【FROM MSDN && 百科】原型:unsigned int strlen(const char *s)#includeGet the length of a string, using the current locale or a specified locale.计算字符串s的(unsigned int型)长度,不包括'\0'在内.返回s的长度,不包括原创 2012-12-26 17:34:07 · 9606 阅读 · 0 评论 -
C语言宏定义了解
#define 除了定义常数之外,经常还用来定义字符串,尤其是路径。用define来定义注释符号。注释要先于预指令被处理,当这两行被展开成//...或/**/时,注释已处理完毕,此时再出现//...或/**/自然错误,因此试图用宏开始或结束一段注释是不行的。#define与#的结合使用#define与##的结合使用。定义一个宏,实现一年有多少秒//下面是网上推荐的,但是在V原创 2012-12-19 11:37:12 · 758 阅读 · 0 评论 -
C语言之malloc函数
【FROM MSDN && 百科】原型: void *malloc(unsigned int size);#include或#include malloc的全称是memory allocation,中文叫动态内存分配,当无法知道内存具体位置的时候,想要绑定真正的内存空间,就需要用到动态的分配内存。malloc 向系统申请分配指定size个字节的内存空间(连原创 2013-01-08 17:27:37 · 7691 阅读 · 1 评论 -
C语言之calloc函数
【FROM MSDN && 百科】原型: void *calloc(size_t n,size_t size);#include或#include 在内存的动态内存区中分配n个长度为size的连续空间,函数返回一个指向分配起始地址的指针;如果分配不成功,返回NULL。与malloc的区别是:calloc在动态分配完内存后,自动初始化该内存空间为零,而mal原创 2013-01-10 10:31:42 · 8802 阅读 · 0 评论 -
C语言之realloc函数
【FROM MSDN && 百科】【FROM:http://baike.baidu.com/view/736230.htm】原型: void * realloc ( void * ptr, size_t size );#include或#include 指针名=(数据类型*)realloc(要改变内存大小的指针名,新的大小)。//新的大小一定要原创 2013-01-10 16:25:09 · 3072 阅读 · 0 评论 -
C语言之free函数及野指针
【FROM MSDN && 百科】原型: void free(void *ptr);#include或#include Deallocate space in memory释放ptr指向的存储空间。被释放的空间通常被送入可用存储区池,以后可在调用malloc、realloc以及realloc函数来再分配。注意:连续两次使用free函数,肯定会发原创 2013-01-09 10:49:22 · 12807 阅读 · 4 评论 -
《C语言深度解培》读书笔记之二
C语言的基本符号就有20多个,每个符号可能同时具有多重含义,而且这些符号之间相互结合又使得C语言中的符号变得更加复杂起来。注释C语言的注释可以出现在程序的任何地方,这句话对不对? int/**/n; char *s="abcd //hgjkeife"; //is it a \ valid comment in/**/t i;前三条注释都正确,第四条不正确。第一条原创 2013-01-24 15:40:22 · 1622 阅读 · 0 评论 -
《C语言深度解培》读书笔记之三
第三章主要讲了C语言中的宏定义,关于宏定义的学习之前在”C语言宏定义了解“文章中有叙述过,在此翻看学习。原创 2013-01-24 17:45:27 · 989 阅读 · 0 评论 -
《C语言深度解培》读书笔记之一
前言: 听明白,看明白并不代表你懂了,你懂了不代表你会用了,你会用了不代表你会用明白,你能用明白并不代表你真正懂了!什么时候表明你真正懂了呢?你站到我这来,把问题给同学讲明白,学生们听明白了,说明你真正懂了。否则你就没有真正懂,这是检验懂没懂的唯一标准。 从现在开始,除非在特殊的情况下,不允许使用printf函数。 永远记住一点:结果对,并不代表程序真正没有问原创 2013-01-23 17:44:48 · 2070 阅读 · 2 评论 -
C语言文件连接DEMO
【FROM C语言实战500例 ---39例】#include #include #include /*去掉程序中的warning information*/#pragma warning(disable:4996)/*输出文件内容*/void OutputFile(FILE *fp){ char ch; while((ch=fgetc(fp))!=EOF) {原创 2012-12-17 15:00:46 · 1432 阅读 · 0 评论 -
C语言随机读写文件DEMO
【FROM C 语言实战105例中的第37例 随机读写文件】/*随机读写文件第37例*//*来源于C语言实战105例*/#include#include #define NUM 3int main(void){ FILE *fp1; int i,err; struct rec { char id[10]; char name[15]; char depa原创 2012-12-17 11:36:59 · 2046 阅读 · 0 评论 -
C语言fclose函数了解
fclose()关闭关闭一个流,注意:使用fclose()函数就可以把缓冲区内最后剩余的数据输出到磁盘文件中,并释放文件指针和有关的缓冲区。#include原型:int fclose(FILE *stream);int _fcloseall(void);fclose returns 0 if the stream is successfully closed._fclose原创 2012-12-12 16:11:19 · 6833 阅读 · 0 评论 -
C语言fgets函数了解
原型是:char *fgets(char *s, int n, FILE *stream);从文件指针stream中读取n-1个字符,存到以s为起始地址的空间里,直到读完一行,如果成功则返回s的指针,否则返回NULL。例如:一个文件是hello,world,用fgets(str1,4,file1); 执行后str1="hel",读取了4-1=3个字符.而如果用而如果用fg原创 2012-12-11 17:34:35 · 11391 阅读 · 1 评论