
c语言
kehanxin
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
例子程序1:读取文件内容并打印到屏幕上
/*文件名:---- 作者:kehanxin 时间:---- 说明:读取特定文件paper.txt中内容并打印在屏幕上 */ #include <stdio.h> int main(void) { char line[1024]; FILE *fp_read = NULL; /* 定义一个文件指针 */ if (!(fp_read = fopen("pa原创 2015-12-27 21:58:53 · 4568 阅读 · 0 评论 -
内存的动态分配
动态内存分配函数原型:#include <stdlib.h> void *malloc(size_t size) void free(void *ptr);malloc()函数的作用是分配内存,参数size是分配内存的字节数。如果分配内存成功,返回内存指针;如果分配内存失败,那么返回空指针NULL。 当申请的内存不再使用时需要利用free()函数进行释放。char *str = NULL;/* 分原创 2015-12-28 17:10:13 · 328 阅读 · 0 评论 -
函数参数的传递
函数调用有两种形式:传值调用、引用调用 传值调用的特点: 传值调用传递的是参数值 调用函数时,先将实参的值计算出来再赋给对应的形参 在函数内对形参的运算与实参完全脱离关系 当函数执行完毕返回时,形参的值不会带到对应的实参中 用值传递方式时,形参是变量;而实参可以是变量,也可以是表达式 引用调用的特点: 引用调用传递的是地址,调用函数时,把实参的地址赋予对应的形参 因为形参和实参共用同一个地址,所在原创 2015-12-28 19:56:48 · 292 阅读 · 0 评论 -
常见的转义字符及含义
转义字符 转义字符的意义 ASCII代码 \n 换行 10 \t 横向跳到下一制表位置 9 \b 退格 8 \r 回车 13 \f 走纸换页 12 \\ 反斜线符”\” 92 \’ 单引号符 39 \” 双引号符 34 \a 响铃 7 \ddd 1~3位八进制数所代表的字符翻译 2015-12-27 13:49:59 · 1002 阅读 · 0 评论 -
数据类型转换
转义字符 转义字符的意义 ASCII代码 \n 换行 10 \t 横向跳到下一制表位置 9 \b 退格 8 \r 回车 13 \f 走纸换页 12 \\ 反斜线符”\” 92 \’ 单引号符 39 \” 双引号符 34 \a 响铃 7 \ddd 1~3位八进制数所代表的字符原创 2015-12-27 14:25:21 · 321 阅读 · 0 评论 -
scanf()使用要点
注意点: scanf()函数的格式控制字符串”%3d%3d”中的3意思为取3个字符到对应位置变量 scanf()函数的格式控制字符串中,所有非格式控制内容都必须在输入中体现,不会保存在变量中 scanf()函数的格式控制字符串中的”%*d”对应的数据被忽略,忽略一个整型数据 读取十六进制数据时输入0xaa、aa、0Xaa、0xAA、0xAa、AA结果都一样 scanf()函数读取多个字符时,只要在格原创 2015-12-27 15:39:06 · 400 阅读 · 0 评论 -
getchar()函数使用要点
注意点: 该函数一次只能读取一个字符,但只在键盘上输入一个字符(回车外)时,getchar()函数读不到任何字符,只有按下回车之后getchar()函数才会真正读取字符键盘上按下的回车键当做一个字符来处理,不会被忽略getchar()函数的返回值就是读取到的一个字符原创 2015-12-27 15:49:01 · 2887 阅读 · 0 评论 -
c语言注释要点
C语言注释简介: 注释应该出现在三种位置 文件头部 函数头部 函数体内的和代码混在一起的注释 对于文件头部的注释至少列出: 版权声明、版本号、文件创建日期、作者、内容/功能、与其他文件的关系、修改日志等。函数头部注释要求至少列出: 函数功能、输入/输出参数、返回值、调用/被调用关系等。注意点: 对于放在代码上方的注释有时还会和上方其他代码用一个空行隔开 全局变量应减少使用,必须使用时要有详细的原创 2015-12-26 22:11:21 · 1164 阅读 · 0 评论 -
c语言变量与常量
注意点: 通常用大写字母拼写符号常量的标识符,用小写字母拼写变量的标识符 对于命名中的缩写以及单词的特殊使用,必须有注释说明,这些注释通常写在源文件开头 除非数字有助于说明标识符含义,否则不要在定义标识符时使用数字 对于不作为接口使用的变量、结构、函数、常量等内容通常和负责接口的代码分离在不同的文件编写,或者使用“static”修饰 减少全局变量的使用,降低模块间的耦合度,并充分注释全局变量 不能使原创 2015-12-26 22:43:39 · 261 阅读 · 0 评论 -
void类型指针
void类型指针是一种特殊的指针,本身不属于任何类型,可以代表任何类型的指针。 只要不明确要处理的数据是什么类型,就可以使用”void *”来定义,需要当做某种类型来使用时只要做类型转换即可。int num = 10; void *pnum = (void *)# printf("%d\n", *((int *)pnum)); /* 输出10 */原创 2015-12-28 16:54:55 · 324 阅读 · 0 评论 -
printf()函数常用格式控制
格式字符 含义 d 以十进制形式输出有符号整数 o 以八进制形式输出无符号整数 x,X 以十六进制形式输出无符号整数 u 以十进制形式输出无符号整数 f 以小数形式输出单、双精度浮点数 c 输出单个字符 s 输出字符串翻译 2015-12-27 15:15:08 · 1402 阅读 · 0 评论 -
例子程序2:使用内存操作函数memset()给数组赋值
/* 文件名:---- 作者:kehanxin 日期:---- 说明:使用内存操作函数memset()给数组赋值。 */ #include <stdio.h> #include <memory.h>int main(void) { int arr[10]; /* 声明整型数组arr */ /* 使用内存操作函数memset()对数组arr各项元素赋值 *原创 2015-12-28 14:39:08 · 429 阅读 · 0 评论 -
字符串处理函数puts()和gets()
puts()函数原型:int puts(const char *s); puts()函数向标准输出设备输出一个字符串,然后输出一个换行符’\n’。char *str = "this\tis\ta\ttest.\n"; /* 字符串常量 */ char strr[100] = "string"; /* 字符串变量 */puts(str); puts(strr);gets()函数原型:char *g原创 2015-12-28 15:25:11 · 1214 阅读 · 0 评论 -
复制字符串strcpy()函数
strcpy()函数原型:#include <string.h> char *strcpy(char * restrict s1, const char * restrict s2);strcpy()函数为复制一个字符串(参数中的s2)的全部内容到另一个位置(参数中的s1)。其中,目标位置的大小必须能够容纳被复制的字符串,否则会引起错误。char *str = "string"; char strr原创 2015-12-28 15:40:33 · 1333 阅读 · 0 评论 -
取字符串的长度strlen()函数
strlen()函数的原型:#include <string.h> size_t strlen(const char *s);strlen()函数为计算字符串s的字节数(长度),该字符串可以使空串(长度为0),字符串的最大长度依赖于C语言库的实现方法和操作系统,通常最大长度为2GB或4GB。char str[100]; int len = 0;len = strlen("hello"); /*原创 2015-12-28 15:48:53 · 1148 阅读 · 0 评论 -
连接字符串strcat()函数
strcat()函数的原型:#include <string.h> char *strcat(char * restrict s1, const char * restrict s2);strcat()函数把字符串(参数中的s2)的全部内容追加到另一个位置中字符串(参数中的s1)的末尾,原始字符串(参数中的s2)内容不变。其中, 目标位置的大小必须能够容纳被复制的字符串,否则会引起错误。char *原创 2015-12-28 15:55:34 · 1768 阅读 · 0 评论 -
比较字符串strcmp()函数
strcmp()函数的原型:#include <string.h> int strcmp(const char *s1, const char *s2);strcmp()函数按照ASCII码表的顺序比较两个字符串,根据比较结果返回一个值,返回值有三种可能,其中返回0表示两个字符串一致。char *str = "string";if (strcmp(str, "string") == 0) {原创 2015-12-28 16:05:26 · 567 阅读 · 0 评论 -
搜索字符串strstr()函数
strstr()函数的原型:#include <string.h> char *strstr(const char *s1, const char *s2);strstr()函数从字符串s1中搜索第一次出现字符串s2的位置,如果能搜索到,那么返回相应位置(指针);如果搜索不到,那么返回NULL(空指针);如果字符串s2为空(长度为0),那么返回字符串s1。char *str = "this\tis\原创 2015-12-28 16:16:47 · 574 阅读 · 0 评论 -
字符串转换为数值函数
字符串转换为数值函数的原型:#include <stdlib.h> int atoi(const char *nptr); long int atol(const char *nptr); double atof(const char *nptr);这些函数把字符串(参数nptr)转换为某种类型数值,转换得到数值的类型为函数原型左边的类型。printf("%d\n", atoi("123"));原创 2015-12-28 16:31:28 · 1228 阅读 · 0 评论 -
在VC++6.0中嵌入汇编
#include<stdio.h>int main() { int a1 = 10, b1 = 0; _asm{ mov eax,a1 //将a1值赋给寄存器eax mov b1,eax //将eax值赋给b1 } printf("result:%d, %d\n", a1, b1); //result:10 10 retu原创 2016-03-10 13:33:04 · 812 阅读 · 0 评论