【C语言】函数(2)
函数的嵌套使用和链式访问嵌套使用123456789101112131415//嵌套使用int test1(){ test2(); return 0;}void test2(){ printf("hello\n");}int main(){ test1(); return 0;}
链式访问
把一个函数的返回值作为另一个函数的参数
123456789101112131415161718//链式访问int main(){ int len = strlen("abc"); printf("%d\n", len); //链式访问 printf("%d\n", strlen("abc")); char arr1[20] = { 0 }; char arr2[] = "hello"; strcpy(arr1,arr2);//arr2拷贝到arr1 printf("1:%s\n&q ...
【C语言】函数(1)
函数是什么?在维基百科中对函数的定义:子程序
什么是子程序呢?
在计算机科学中,子程序(英语:Subroutine, procedure, function, routine, method, subprogram, callable unit),是一个大型程序中的某部分代码, 由一个或多个语句块组 成。它负责完成某项特定任务,而且相较于其他代 码,具备相对的独立性。
一般会有输入参数并有返回值,提供对过程的封装和细节的隐藏。这些代码通常被集成为软 件库。
函数的分类
库函数
自定义函数
库函数当我们学习C语言编程的时候,总是在一个代码编写完成之后迫不及待的想知道结果,想把这个结果打印到屏幕上。这个时候我们会频繁的使用一个功能:将信息按照一定的格式打印到屏幕上(printf)
在编程的过程中我们会频繁的做一些字符串的拷贝工作(strcpy)
在编程是我们也计算,总是会计算n的k次方这样的运算(pow)。
像上面我们描述的基础功能,它们不是业务性的代码。我们在开发的过程中每个程序员都可能用的到, 为了支持可移植性和提高程序的效率,所以C语言的基础库中提供了一系列类似的库函数 ...
【C语言】循环语句
while 循环
for 循环
do while 循环
while 循环语法结构:
12while(表达式) 循环语句;
例题:在屏幕上打印 1~10
12345678910int main(){ int a = 1; while (a<=10) { printf("%d\n", a); a++; } return 0;}
break的使用以下代码会打印输出什么?
1234567891011121314int main(){ int a = 1; while (a<=10) { if (a ==5) { break; } printf("%d\n", a); a++; } return 0;}
答案:1 2 3 4
在while循环中,break用于永久终止循环
continue的使用以下代码会打印输出什么?
1234567891011121314int main(){ int a = 1; wh ...
【C语言】分支语句
if 语句
switch 语句
if语句语法结构:
1234567891011121314if(表达式) 语句;//或者if(表达式) 语句;else 语句2;//多分支if(表达式) 语句;else if(表达式2) 语句2;else 语句3;
若表达式为真,则语句执行
在C语言中,0表示假,非0表示真
例子:
123456789int main(){ int age = 10; if (age>=18) printf("成年\n"); else printf("未成年\n"); return 0;}
不过这种写法只能执行一条语句
所以我们可以使用以下的写法,使用{}
例子:
1234567891011121314151617181920212223242526272829303132333435int main(){ int age = 180; if (age<18) { printf("少年\n" ...
初识C语言(4)
#define 定义常量和宏define 是一个预处理指令
define 定义标识符常量
1234567//define 定义标识符常量#define MAX 1000int main(){ printf("%d\n",MAX); //1000 return 0;}
define 定义宏
12345678910define 定义宏#define ADD(x,y) x+y#define ADD2(x,y) ((x)+(y))int main(){ printf("%d\n",ADD(2,3));//5 printf("%d\n", 4*ADD(2, 3));//11 4*2+3 printf("%d\n", 4 * ADD2(2, 3));//20 return 0;}
define 定义宏的时候,字符串出现运算符,需要在合适的位置上加括号
否则宏的参数会被替换 替换成 4*x+y
指针内存内存是电脑上特别重要的存储器,计算机中所有程序的运行都是在内存中进行的。
...
初识C语言(3)
操作符
算术操作符: + - * / %
移位操作符: >> <<
位操作符: &(按位与) |(按位或) ^(按位异或)
赋值操作符: = += -= *= /= %= &= ^= |= >>= <<=
单目操作符:
操作符
意义
!
逻辑反操作
-
负值
+
正值
&
取地址
sizeof
操作数的类型长度(以字节为单位)
~
对一个数的二进制按位取反
–
前置、后置–
++
前置、后置++
*
间接访问操作符(解引用操作符)
(类型)
强制类型转换
关系操作符: > >= < <= ! ...
初识C语言(2)
字符串字符串就是一串字符 - 用双引号括起来的一串字符
123456789int main(){ //字符数组 - 数组是一组相同类型的元素 //字符串在结尾隐藏了一个 \0 的转义字符 是字符串的结束标志 //%s打印字符串 char arr[] = "abc"; printf("%s\n", arr); return 0;}
注意:字符串的结束标志是一个 \0 的转义字符。在计算字符串长度时 \0 是结束标志,不算作字符串内容
1234567891011int main(){ //字符数组 - 数组是一组相同类型的元素 char arr[] = "abc"; char arr1[] = { 'a','b','c' };//这种方式没有结束标志,后面会打印出来乱码 char arr2[] = { 'a','b','c', ...
初识C语言(1)
初次新建项目并编写代码使用VS2019,新建一个C++的空项目test_1
在解决方案资源管理器中找到 test_1,右键其中的源文件进行新建一个test.c
编写代码
123456789101112131415161718//1.主函数(main函数)//一个工程中可以含有多个.c文件,但只能有一个main函数//c语言是从主函数第一行代码开始执行,所以需要一个main函数-入口//int为函数的返回类型 int是整型的意思 main为函数名 {}为函数体//printf 库函数 屏幕上打印信息//printf的使用 需要引用头文件 stdio.h//编译+链接+运行代码 ctrl+f5#include <stdio.h>int main(){ printf("Hello"); //%d 表示打印的是一个整数 printf("%d\n", 100); return 0;}
数据类型char - 字符数据类型
short - 短整型
int - 整型
long - 长整型
long lo ...
Uni-App图形验证码
一、功能概述点击按钮后,弹出一个窗口,进行图形验证,验证失败进行抖动,成功后返回滑块的x轴。
二、功能制作新建一个home.vue页面,设置一个按钮,点击后弹出slideCode组件
123456789101112131415161718192021222324252627<template> <view> <button @click="slideCode_show = true">点击获取图形验证码</button> <slideCode v-if="slideCode_show" :session_id="session_id[0]"></slideCode> </view></template><script> import slideCode from '../../components/slideCode/slideCode.vue' export default { da ...
Koa2搭建通用API服务
零、项目结构main.js是项目的入口文件,导入了config/config.default.js文件和app/index.js文件。
config/config.default.js文件是读取你的.env文件,将配置写到process.env中
.env 全局默认配置文件
app/index.js是项目的app服务,导入了koa框架,koa-body并使用,app/errHandler 错误处理中间件和router/user.router路由模块
router/user.router是项目的路由文件,导入使用了koa-router,middleware/user.middleware和controller/user.controller
controller/user.controller是项目的控制器,用于接口的编写,导入了一个service/user.service和consitant/err.type
service/user.service主要是做数据库处理,导入了model/user.model,调用model完成数据库操作
model/user.model 编写数据表,导 ...