C语言
noc_lemontree
踏实走。
展开
-
C 头文件之<ctpye.h>
【简要介绍】ctpye.h是C标准库中的头文件,其提供对于字符的判断和映射。需要注意的是,头文件中包含的函数返回值,当符合条件判断时,返回值是非0数,反之,返回值是0. 其中参数为int 型,值的有效范围在0–127之间。【具体函数介绍】 1. int isalnum(int c); 这个函数判断参数c是否为 a digit or a letter.如果是,则返回非0,如果不是,则返回0。原创 2015-08-21 19:25:27 · 863 阅读 · 0 评论 -
[leetcode]Power of Two C语言
【题】 Given an integer, write a function to determine if it is a power of two. 【具体代码如下】 bool isPowerOfTwo(int n) { int i; if(n<1)return false; while(n!=1) { i=n%2; if(i=原创 2015-09-08 14:57:23 · 863 阅读 · 0 评论 -
C程序内存段分配
在Linux下程序运行时,所用文件大致可以划分为代码区(只读),数据区(存放已经初始化的全局变量或者静态数据)只能被初始化一次,未初始化数据区,堆区(动态申请内存),堆栈区(存放局部变量,临时变量等)。可执行文件在linux中的存储情况可以通过size命令得出。编译后main为可执行文件。使用如下:melody@melody-HP-Compaq-dc7900-Small-Form-Fact原创 2016-03-05 21:06:01 · 406 阅读 · 0 评论 -
指针直接指向给定地址
//int f=5; int *p3=(int *)0x7fff5f55d504; // *p3=5 ; printf("f adr=%p \n",p3); 这段代码当没有输出*p3的时候能正常执行,一旦printf里面加了*p3之后,就出现段错误,为啥呢?这里的怎么回事呢?因为p3指向的是一个随便的内存,注意的是这里的0x.....504代表的不是实际内存,而是虚拟原创 2016-03-09 13:32:49 · 3293 阅读 · 0 评论 -
多线程编程之生产者消费者
先来一段代码:#include<stdio.h>#include<pthread.h>#include<assert.h>#include<stdlib.h>typedef struct msg{ struct msg *next; int num;}Msg;Msg *head=NULL;pthread_cond_t ready=PTHREAD_COND_INITIALI原创 2016-04-01 16:21:48 · 427 阅读 · 0 评论