C 函数 技术教程文章

兔子生娃问题---函数递归应用--c语言实现【代码】

事情是这样的:在很久很久以前。。。。有一对兔子,从出生后第 3 个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?兔子的规律为数列:1, 1, 2, 3, 5, 8, 13, 21 ....#include

C语言 编写函数判断B是不是A的子串【代码】

编写函数判断B是不是A的子串(假设A的长度大于B的长度,且两个字符串都不超过100个字符)。注意:串中任意个连续的字符组成的子序列称为该串的子串。 主函数中输入两个字符串,并调用上述函数判断,然后在主函数中输出”YES”,或者”NO”。 提示:不能使用库函数。 输入提示信息:“Please input the first str:” 输入格式:"%s" 输入提示信息:“Please input the second str:” 输入格式:"%s" 输出格式:“YES\n” “NO\n” 代码...

C语言操作时间函数time.ctime,实现定时执行某个任务小例子【代码】【图】

时间操作函数在实际项目开发中会经常用到,最近做项目也正好用到就正好顺便整理一下。时间概述 由上图可知:通过系统调用函数time()可以从内核获得一个类型为time_t的1个值,该值叫calendar时间,即从1970年1月1日的UTC时间从0时0分0妙算起到现在所经过的秒数。而该时间也用于纪念UNIX的诞生。函数gmtime()、localtime()可以将calendar时间转变成struct tm结构体类型变量中。通过该结构体成员可以很方便的得到当前的时间信息。 我们...

C语言_学习笔记——“利用fgetc()函数计算.txt文件行数”【代码】【图】

“利用fgetc()函数计算.txt文件行数” fgetc()函数----来自RUNOOB.COM的描述 需要注意的是,每使用一次fgetc()函数,位置描述符自动往后移动一位。 环境:Code::Blocks 注:打开的txt文件(下面代码中为"2021.txt")为相对路径,要和.c文件在同一目录下才能执行成功;尝试了不在同一目录下的绝对路径,不知道为什么找不到文件。 #include <stdio.h> #include <stdlib.h>int main(void) {int lenth = 0;i...

C语言execvp()函数简述【代码】

包含头文件:#include <unistd.h> 函数定义:int execvp(const char *file, char * const argv []); 函数说明:execvp()会从环境变量所指的目录中查找符合参数 file 的文件名, 找到后执行该文件, 然后将第二个参数argv 传给该执行的文件。 返回值:如果执行成功则函数不会返回, 执行失败则直接返回-1. 实例: //args[0] = "ls"; //args[1] = "-al"; pid_t pid = fork();if(pid == 0){ execvp(args[0],args);//执行ls -alexit(1);}...

C语言:toascii()函数【代码】

/* 头文件:#include <ctype.h> 定义函数:int toascii(int c); 函数说明:toascii()会将参数c 转换成7 位的unsigned char 值,第八位则会被清除,此字符即会被转成ASCII码字符。 返回值:将转换成功的ASCII 码字符值返回。 下面的程序结果是二次0-127的字符 */#include<stdio.h> #include <ctype.h> main() { int i;for(i=0;i<255;i++){//printf("%c ",i);char bla=a;printf("%c ",toascii(i));if(i%10==0)printf("\n");} }

c语言钩取函数 并奉上使用实例 2021-04-08 110【图】

运行环境: Windows 7 32位 Visual Studio 2010 /** 名称:hookByCode 功能: 在某个API下钩子 参数:TCHAR * moduleName 模块名 TCHAR * funcName 函数名 PVOID hookProc 钩子函数 返回值:PBYTE 返回被下钩子的API的前5个字节 用于脱钩 **/ PBYTE hookByCode(TCHAR * moduleName,TCHAR * funcName,PVOID hookProc){ //获取API函数地址 PVOID APIAddr = getAPIAddress(moduleName,funcName); //保存API前五个字节 BYTE pBuf[5] = ...

C语言快排qsort()函数【图】

快速排序在数据结构中具有很高的地位,个人认为主要是其平均空间复杂度O(nlogn)很是吸引人。所以想动手完成一次快排。通过查阅资料发现C语言本身有快排的相关函数qsort()。 qsort(head, number, sizeof(head[0]), cmp); 其中一次解释每一个参数head :即数组的首地址number :即元素的个数sizeof(head[0]) :即其中一个元素的大小cmp :为一个函数名 具体的函数如下:int cmp(const void a, const void b){return (int)a - (int)b; //由...

阶乘 利用递归函数实现 c语言 简单易懂

#include<stdio.h>//标准的输入输出流 #include<stdlib.h>//system(“pause”)要用 int func(int n);//进行阶乘运算的具体实现形式 int main(void)//主函数 { int sum = 1;//定义并初始化sum的值为1 int n;//定义一个变量n printf(“请输入你想要几的阶乘\n”);//提示用户输入想要几的阶乘 scanf_s("%d", &n);//将你刚刚输入的数读入到变量n中去 sum = func(n);//通过传入n的值,来计算它的阶乘所得的数,并将所得的结果返回,并通...

C语言 导出函数的格式

#ifdef __cplusplus 如果是c++文件,就将endif内的代码用c编译器编译extern "C" { #endif__declspec(dllexport) void SetProcName(LPCTSTR szProcName)  //__declspec(dllexport) 声明此函数为导出函数 { _tcscpy_s(g_szProcName, szProcName); } #ifdef __cplusplus }#endif

对于初学者C语言者来说,往往会忽略.h头文件的作用。.h是头文件,一般存放函数的声明、数组、和定义的变量,所以在检查语法和拼写没有错误还报错的情况下,就需要相关头文件和函数文件是否只正确调用。【代码】【图】

这里写自定义目录标题 欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants 创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器 你好! 这是你第一次使用 Ma...

C语言中的bzero函数

bzero()函数,是一个C语言函数,但不是标准库函数,没有在ANSI中定义。 目前Linux的GCC支持。 函数功能:将指定内存块的前n个字节全部设置为零。 函数所在头文件:#include <string.h> 函数原型: void bzero(void *s, int n); 函数参数:s为内存(字符串)指针,所指定内存块的首地址,n 为需要清零的字节数。实际上,bzero(void *s, int n) 等价于 memset((void*)s, 0,size_tn),用来将内存块的前 n 个字节清零,但是 s 参数为指针...

C语言中的函数概念【代码】【图】

函数的基本使用和递归 1.函数是什么 2.库函数 3.自定义函数 4.函数参数 5.函数调用 6.函数的嵌套调用和链式访问 7.函数的声明和定义 8.函数递归 1.函数是什么?在计算机科学中,子程序(函数)是一个大型程序中的某部分代码,由一个或多个语句构成,它负责完成某项特定任务,而且相较于其他代码,具备相对的独立性。 一般会有输入参数并由返回值,提供对过程的封装和细节的隐藏,这些代码通常被集成软件库 函数的基本组成: ** 返回...

C语言:外部函数【代码】【图】

//main.c #include <stdio.h> extern void func(); extern int m; int n = 200; int main(){func();printf("m = %d, n = %d\n", m, n);getchar();//return 0; }//module.c #include <stdio.h> int m = 100; void func(){printf("Multiple file programming!\n"); }

c语言学习打卡 自定义函数【图】

自定义函数时:最后return接的不是定义的函数名称,而是你要取得计算结果的名称,如图;在调用函数时,前面等于调用函数值要加上函数结果的类型

C语言学习笔记 —— 函数作为参数【代码】

示例程序: #include <stdio.h> #include <math.h> #define EPSILON 1e-6double f(double x) {return 2 * pow(x, 3) - 4 * pow(x, 2) + 3 * x - 6; }double f_prime(double x) {return 6 * pow(x, 2) - 8 * x + 3; }double h(double x) {return pow(x, 3) - 4*pow(x, 2) + 3*x - 6; }double h_prime(double x) {return 3*pow(x,2) - 8*x + 3; }double newton(double (*fp)(double), double (*fp_prime)(double)) {double x = 1.5;w...

C语言中常用的数学函数【代码】【图】

① double exp(double x); (求e的x次幂) ② double pow(double x, double y); (求x的y次幂) ③ double sqrt(double x); (求x的算术平方根) ④ double fabs(double x); (求参数x的绝对值) ⑤ double log(double x); (以自然对数e为底) ⑥ double log10(double x); (以10为底) ⑦ double sin(double x); (x为弧度) ⑧ double cos(double x); (x为弧度) #include<stdio.h> #include<math.h> int main() {printf("e^3=%.3lf\n", exp(3)...

[c语言-函数]不定量参数【代码】【图】

源码 #include<stdio.h> #include<conio.h> int main(int count,char *data[]) {printf("一共有 %d 个参数\n",count);for(int i=0;i<count;i++){printf("参数%d: %s\n",i+1,data[i]);}getch();return 0; } 说明 主要看第二行main函数的声明 1.count是参数的数量 2.传入的参数会以字符串的形式保存在data指针数组中 应用 1.直接编译运行,只会有一个参数,是exe文件在计算机中的路径。 data指针数组的第一个参数默...

3.17 c语言自定义函数【图】

比较两个数的较大值2.用函数交换两个变量的值当不使用函数时,应使用一个中间参数进行替换,否则在将a=b时,a的值已经改变为b,再用b= a时,b的值并未发生改变在使用函数时,下图的结果中a,b的值并未交换,这是因为自定义函数中的x,y与a,b的存储位置不同,导致在使用该函数时,虽然x,y的值发生了交换,但是a,b的值未发生交换此时,在要实现a,b值交换时,要用取地址符,读取地址,再运用指针去接收(还没有学到指针,大致是这...