C语言

C语言是一门通用计算机编程语言,应用广泛。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。

Linux C语言错误处理

<stdio.h>中定义了perror(),perror是在标准输出上输出msg字符串,然后再后面加上:错误语段(这个错误语段对应这时的errno) <string.h>中定义了strerror(),strerror是把一个错误numb作为参数,然后返回错误numb所对应的错误语段,一般用errno。#include <stdi

2015-07-07 16:45:18

一个实用性很广的C语言链表实例 [转]

链表的c语言实现(一) 准备:动态内存分配 一、为什么用动态内存分配 但我们未学习链表的时候,如果要存储数量比较多的同类型或同结构的数据的时候,总是使用一个数组。比如说我们要存储一个班级学生的某科分数,总是定义一个float型(存在0.5分)数组: float score[30]; 但是,在使用数组的时候,总有一个问题困扰着我们:数组应该有多大?

2015-07-07 16:45:18

C语言创建UTF-8编码文本文件

用二进制方式创建一个文件,然后写UTF-8文件头(必须在后续写之前)     char header[3] = {0xef, 0xbb, 0xbf};  // UTF-8 file header     FILE * fp = fopen(pszFile, \"w+b\");&nbsp

2015-07-07 16:45:17

C语言中“内存对齐”解析

    转载连接1:http://blog.csdn.net/21aspnet/article/details/6729724 转载连接2:http://blog.chinaunix.net/uid-10995602-id-2918694.html   文章最后本人做了一幅图,一看就明白了,这个问题网上讲的不少,但

2015-07-07 16:45:16

windows下C语言调用系统文件选择对话框

代码片段,在windows下用C语言调用文件选择对话框,以备忘   #define DEFAULT_DIR \"\" char extraction_path[MAX_PATH] = DEFAULT_DIR; /* * Browse for a folder and update the folder edit box

2015-07-07 16:45:16

C语言定义数组的几种形式

数组时常都可以用到,以前用在C语言里用, 后来在C# 里也用,现在回过头来学习C语言,总结一下C语言定义数组的几种形式: 以一维数组为例 int arr[10]; int arr[] = {1,2,4}; int arr[10] = {1,2}; int *arr  = new int[10]; 前面三种常常都可以用到,但使用第四种时需

2015-07-07 16:45:15

linux C语言,PV实现生产者消费者问题

//信号量---线程间通信 //“生产者消费者” 问题 #include<stdio.h> #include<stdlib.h> #include<unistd.h> #include<semaphore.h> #include<pthread.h> #de

2015-07-07 16:45:15

c语言 链表使用示例

1 #include<stdio.h> 2 #include<stdlib.h> 3 #include<string.h> 4 typedef struct list{ 5 struct list *next; 6 char name[30];//用户名称 7

2015-07-07 16:45:15

有趣的C语言题

1 #include <stdio.h> 2 int main(void) 3 { 4 char buff[10]; 5 memset(buff,0,sizeof(buff)); 6 gets(buff); 7 printf(\"\\n The buffer entered is [%s]\\n\"

2015-07-07 16:45:15

C语言枚举的类型检查问题

在K&R的《C程序设计语言》中2.3节提到:“尽管可以声明enum类型的变量,但编译器不检查这种类型的变量中存储到值是否为该枚举到有效值。不过,枚举变量提供这种检查,因此枚举比#define更具优势。” 非常不理解。enum类型的变量与枚举变量到底有什么区别?为什么前者不会检查而后者会呢?英文版如下描述: “A

2015-07-07 16:45:14

C语言中的宏替换和java的相似性思考

一直对c语言的预处理部分没有一个系统的学习,最近看《c专家编程》这本书,里边提到了一些用法,索性对预处理这一部分总结一下。 首先是一些定义: 预处理指令是以#号开头的代码行。#号必须是该行除了任何空白字符外的第一个字符。#后是指令关键字,在关键字和#号之间允许存在任意个数的空白字符。整行语句构成了一条预处理指令,该指令将在编译器进行编译之前对源代码做某些

2015-07-07 16:45:14

探讨C语言中的回调函数

http://www.blogjava.net/huyi2006/articles/180169.html 回调函数是一个程序员不能显式调用的函数;通过将回调函数的地址传给 调用者从而实现调用。回调函数使用是必要的,在我们想通过一个统一接口实现不 同的内容,这时用回掉函数非常合适。比如,我们为几个不同的设备分别写了不同 的显示函数:void TVshow(

2015-07-07 16:45:13

VS2005 不安全警告 C语言

使用vs2005编译时会遇到这样一个warning:warning C4996: **** was declared deprecated 其实 warning C4996的详细含义就是:****: This function or variable may be unsafe. To disable deprecation, use _CRT_S

2015-07-07 16:45:13

C语言:基本数据类型与程序结构控制

1. C 语言的基本组成 1.1 C语言有什么 1)数据类型 C语言提供了很多数据类型,其中基本类型包括字符、具有多种长度的整型和浮点数等。另外还通过指针、数组、结构和联合派生的各种数据类型。 运算符与操作数构成了表达式。 任何表达式,包括函数调用表达式、赋值表达式,加句尾加分号后都成为了一个语句。 指针提供了与具体机器无关的地址算术运算。 2)流程控制:

2015-07-07 16:45:13

C语言链表实现

     因为平时经常使用链表,所以仿照维基百科上的链表解释,写了一个链表头文件,以后方便使用。 #include <stdio.h>#include <stdlib.h>#include <memory.h>#include <malloc.h>/*** zhangz

2015-07-07 16:45:12

C语言 EAN13 条形码生成【bmp生成】

废话不多说   直接上代码     1 #ifndef _BMP_H_ 2  #define _BMP_H_ 3 4 #include<stdio.h> 5 6  #define max_height 4096 7  #define max_width 4096 8

2015-07-07 16:45:12

C语言数据结构学习用单元测试

药物名称: C语言数据结构学习用单元测试 主治: 本品是基于CUnit编写的、全部的、纯C的数据结构(ADT)各种实现的单元测试。主治基础不牢,水品增长缓慢。建议配合严蔚敏《数据结构》(C语言、第二版)一起使用,效果更佳。 服用方法: 平台:Eclipse with CDT + MinGW(GCC,Make),参考:http://www

2015-07-07 16:45:11

用C语言统计给定文本文件中汉字的个数

汉字机内码在计算机的表达方式的描述是,使用二个字节,每个字节最高位一位为1. 计算机中,补码第一位是符号位,1 表示为负数,所以 汉字机内码的每个字节表示的十进制数都是负数  所以这题也就可以简化为输入字符串判断其中字符转化为十进制数是否小于零.注意:汉字是有两个小于零的字符组成,所以在统计结果的时候就要将count除以2了. #includ

2015-07-07 16:45:11

C语言中的调试小技巧

经常看到有人介绍一些IDE或者像gdb这样的调试器的很高级的调试功能,也听人说过有些牛人做工程的时候就用printf来调试,不用特殊的调试器。特别是在代码经过编译器一些比较复杂的优化后,会变得“难以辨认”,使用调试器也变得有些头疼。先举个简单的例子: 1 #include <stdio.h> 2 3 in

2015-07-07 16:45:10

c语言 writelog

1 #include \"..\\header\\stdafx.h\" 2 #include \"..\\header\\resource.h\" 3 #include \"..\\header\\frame.h\" 4 #include <time.h> 5 #include <sys/stat.h> 6 #inc

2015-07-07 16:45:09