C语言笔记
文章平均质量分 57
qiantanlong
衣带渐宽终不悔,为伊消得人憔悴。
展开
-
C/C++内存管理机制
一:C语言中的内存机制在C语言中,内存主要分为如下5个存储区:(1)栈(Stack):位于函数内的局部变量(包括函数实参),由编译器负责分配释放,函数结束,栈变量失效。(2)堆(Heap):由程序员用malloc/calloc/realloc分配,free释放。如果程序员忘记free了,则会造成内存泄露,程序结束时该片内存会由OS回收。(3)全局区/静态区(Glob转载 2017-10-27 13:40:07 · 428 阅读 · 0 评论 -
遍历数组
#includevoid main() {int ages[] = {12,14,20,36,59,84};int *p = ages;int len=sizeof(ages) / sizeof(int);/*for (; p {printf("%d\n", *p);}*/for (int i = 0; i {printf("%d\n", age原创 2017-10-26 16:37:10 · 413 阅读 · 0 评论 -
C语言的字符串操作
在 C 语言中,字符串的使用需要注意,字符串实际上是使用字符 '\0' 终止的一维字符数组。下面的声明和初始化创建了一个 "Hello" 字符串。由于在数组的末尾存储了空字符,所以字符数组的大小比单词 "Hello" 的字符数多一个。//如果按照字符数组的定义, "Hello" 五个字符,需要包含一个'\0'终止符,也就是要初始化char[6],而不能是char[5]。这个需要特别注意。原创 2017-11-10 13:04:11 · 258 阅读 · 0 评论 -
C语言的字符串按照指定字符串分割操作
函数原型:char * strtok (char *str, const char * delimiters);参数:str,待分割的字符串(c-string);delimiters,分割符字符串。该函数用来将字符串分割成一个个片段。参数str指向欲分割的字符串,参数delimiters则为分割字符串中包含的所有字符。当strtok()在参数s的字符串中发现参数delimi原创 2017-11-11 11:03:31 · 52050 阅读 · 0 评论 -
C语言函数指针
函数指针是指向函数的指针变量,通常我们说的指针变量是指向一个整型、字符型或数组的变量,而函数指针是指向函数。函数指针可以像一般函数一样,用于调用函数、传递参数。#includeint getMax(int, int);void main() { int(*fun)(int, int); fun = getMax; int a=fun(21, 89); printf("%原创 2017-11-10 12:45:59 · 391 阅读 · 0 评论 -
C语言的指针
C语言的强大之处在于可以对内存进行直接操作和管理,但是同时对内存的管理和使用也让C语言变得更难掌握,因为Java中内存的管理是由虚拟机来完成的,开发人员不需要关心内存的申请和释放。其实指针就是一个变量,其值为另一个变量的地址-内存位置的直接地址。就像其他变量或常量一样,在使用指针存储其他变量地址之前,要对其进行声明。一、指针的类型int *ip; /* 一个整型的指针 */d原创 2017-11-10 10:12:04 · 194 阅读 · 0 评论 -
C语言的函数定义和函数声明
C语言不同于Java语言,在Java语言中,在一个类中,定义函数/方法后,在调用时不需要声明。在C语言中定义函数后,在使用前,需要在main函数前进行声明,否则会报错。#include//使用函数前,需要在main函数前对使用的函数进行声明int getMax(int, int);void main() { int t=getMax(12, 21); printf("%d\n",原创 2017-11-10 10:04:18 · 60074 阅读 · 5 评论 -
C语言的数组使用
1、数组的基本定义:C 语言支持数组数据结构,它可以存储一个固定大小的相同类型元素的顺序集合。数组是用来存储一系列数据,但它往往被认为是一系列相同类型的变量。#include#include#includevoid main() { int n[] = { 1,20,12,3,36,52,45,1,4,5,2,85,69,74,52,69,8,5,47,45,8,3,70 };原创 2017-11-09 17:29:13 · 1691 阅读 · 0 评论 -
C语言的常量
常亮的使用是比较频繁的,在 C语言中,有两种简单的定义常量的方式:使用 #define 预处理器。使用 const 关键字。#include#include#include#define Height 10const int Width = 20;void main() { const Age = 30; printf("%d,%d,%d\n",Height,原创 2017-11-09 13:23:28 · 635 阅读 · 0 评论 -
C语言的结构体使用
1、基本的创建结构体和使用#include#include#includestruct Man{ int age; char *name;};void main() { struct Man man = { 20,"tom" }; struct Man man1; man1.age = 30; man1.name = "Jam"; printf("%d,%s\n", m原创 2017-11-08 13:50:13 · 208 阅读 · 0 评论 -
取数组最小值
#includeint min(int t[]) {int len = sizeof(t) / sizeof(int);int tmp = t[0];for (int i = 0; i {if (t[i] tmp = t[i];}}return tmp;}void main() {int ages[] = { 12原创 2017-10-26 17:06:15 · 747 阅读 · 0 评论