C语言
崔恩杰
在这个世界上你所能决定的只有方向和努力,加油。
展开
-
C语言字符串处理-strcmp, strcpy, strcat
1. strcmp1.1 描述C 库函数 int strcmp(const char *str1, const char *str2) 把 str1 所指向的字符串和 str2 所指向的字符串进行比较,该函数包含在<string.h>中。1.2 声明下面是 strcmp() 函数的声明。int strcmp(const char *str1, const char *str2)str1 要进行比较的第一个字符串。str2 要进行比较的第二个字符串。该函数返回值如下:如果返回原创 2020-06-23 08:05:44 · 428 阅读 · 0 评论 -
C语言内存管理-malloc, free, memset, memcpy, memmove
1. malloc和free库函数"stdlib .h"为malloc()和free()提供原型1.1 mallocmalloc()的主要作用是:分配所需的内存空间,并返回一个指向它的指针。malloc()接受一个参数:所需内存的字节数。malloc()会找到合适的内存块,并返回动态分配内存块的首字节地址,如果分配内存失败将返回空指针。通常,可以把malloc()返回的地址赋给一个指针变量,并使用指针来访问这块内存。malloc()...原创 2020-06-17 20:09:06 · 1000 阅读 · 0 评论 -
C语言-void* 指针,数组指针,指针数组(后续)
1.void 指针void 指针可以指向任意类型的数据,就是说可以用任意类型的指针对 void 指针对 void 指针赋值。例如:int *a;void *p;p=a;如果要将 void 指针 p 赋给其他类型的指针,则需要强制类型转换,就本例而言:a=(int*)p。在内存的分配中我们可以见到 void 指针使用:内存分配函数 malloc 函数返回的指针就是 void* 型,用户在使用这个指针的时候,要进行强制类型转换,也就是显式说明该指针指向的内存中是存放的什么类型的数据 (int*)ma原创 2020-06-17 09:16:02 · 1714 阅读 · 0 评论 -
C语言-static,extern,const总结
1. static1.1 static对变量和函数的隐藏作用当我们同时编译多个文件时,所有未加 static 前缀的全局变量和函数都具有全局可见性。例如,我们要同时编译两个源文件,一个是 a.c,另一个是 main.c。下面是 a.c 的内容:char a = 'A'; // global variablevoid msg(){ printf("Hello\n");}下面是 main.c 的内容:int main(void){ extern char a;原创 2020-06-16 14:16:54 · 292 阅读 · 0 评论 -
C语言-函数指针和指针函数的用法和区别
1. 简介本文主要介绍指针函数和函数指针的定义和区别。2 指针函数2.1 定义指针函数,简单的来说,就是一个返回指针的函数,其本质是一个函数,而该函数的返回值是一个指针。声明格式为:*类型标识符 函数名(参数表)看看下面这个函数声明:int f(int x,int y);以上是一个函数,返回值是 int 类型。接着看下面这个函数声明:int *f(int x,int y);这和上面那个函数唯一的区别就是在函数名前面多了一个*号,而这个函数就是一个指针函数。其返回值是一个 int 类转载 2020-06-16 12:22:52 · 1519 阅读 · 2 评论 -
在Linux系统下C语言编译过程的四个步骤
1. 简介C语言程序从源代码到可执行文件(二进制文件)都经历了那些过程?本文以Linux下C语言的编译过程为例,讲解C语言程序的编译过程。以hello.c文件为例:#include <stdio.h>int main(){ printf("hello world!\n");}在linux下编译C程序:$ gcc hello.c -o hello # 编译$ ./hello # 执行hello world! # 输出文本2. 编译的步骤gcc命令编译C语言的过程中原创 2020-06-15 15:36:40 · 3185 阅读 · 0 评论