当前位置: 首页 > news >正文

代码笔录1

10-16

出入栈序列是否合法

//
// Created by 86184 on 2024/10/16.
//
#include <stdio.h>//IIOOOIO
int jude(char s[]) {int count = 0, i = 0;while (s[i] != '\0') {if (s[i] == 'I') count++;else if (s[i] == 'O') count--;else return 0;if (count < 0) return 0;i++;}if (count != 0) {return 0;}return 1;
}int main() {char s[128] = {"IIOOO"};int flag = 0;flag = jude(s);if (flag == 0) {printf("不合法序列");} else {printf("合法序列");}return 0;
}

数字转字符

//
// Created by 86184 on 2024/10/16.
//
#include <stdio.h>//408 ---> "408"
int NumToSt(int n, char s[], int *i) {if (n == 0) return 0;int v;char c;v = n % 10;n /= 10;c = (char) (v + '0');s[*i] = c;*i = *i + 1;return NumToSt(n, s, i);
}int main() {int i = 0, n = 0;char s[128] = {'\0'};scanf("%d", &n);if (n == 0) s[0] = '0';else {NumToSt(n, s, &i);i = i - 1;};while (i > -1) {printf("%c", s[i]);i--;}}

鞍点

//
// Created by 86184 on 2024/10/16.
//
//鞍点
#include <stdio.h>
int main() {int i, j, k, max = 0, Max, flag = 1;int array[3][3] = {{7, 3, 4},{7, 4, 5},{6, 5, 4}};for (i = 0; i < 3; i++) {for (j = 0; j < 3; j++) {if (array[i][j] > array[i][max])max = j;}Max = array[i][max];for (k = 0; k < 3; k++) {if (Max > array[k][max]) {flag = 0;break;}}printf("%d", flag);if (flag == 1)printf("鞍点为:(%d,%d) : %d", i, max, Max);//归位flag = 1;}return 0;
}

10-28

1-n 中1的个数 同源异形体 矩阵局部最值 直接插入排序

//
// Created by 86184 on 2024/10/28.
//
#include <stdio.h>void Q1();void Q2();void Q3();void Q4();void Q5();int main() {int n = 0;scanf("%d", &n);switch (n) {case 1:Q1();break;case 2:Q2();break;case 3:Q3();break;case 4:Q4();break;case 5:Q5();break;default:break;}return 0;
}
//1 - n 中1的个数
void Q1() {int n = 0, count = 0;scanf("%d", &n);for (int i = 1; i <= n; ++i) {int temp = i;while (temp != 0) {if (temp % 10 == 1) count++;temp /= 10;}}printf("%d中有%d个1", n, count);
}
//同源异形体
void Q2() {int array[128] = {0};int n1 = 0, n2 = 0;scanf("%d%d", &n1, &n2);while (n1 != 0) {array[n1 % 10]++;n1 /= 10;}while (n2 != 0) {array[n2 % 10]--;n2 /= 10;}for (int i = 0; i < 10; ++i) {if (array[i] != 0) {printf("不为异形体");return;}}printf("为异形体");
}
//矩阵局部最值
void Q3() {int array[128][128] = {0};int m = 0, n = 0;int i, j;//m行n列scanf("%d%d", &m, &n);for (i = 0; i < m; i++) {for (j = 0; j < n; j++) {scanf("%d", &array[i][j]);}}for (i = 1; i < m - 1; i++) {for (j = 1; j < n - 1; j++) {if (array[i][j] > array[i][j + 1] && array[i][j] > array[i][j - 1]&& array[i][j] > array[i - 1][j] && array[i][j] > array[i + 1][j])printf("array[%d][%d]= %d", i, j, array[i][j]);}}
}
//直接插入排序
void Q4() {int array[128] = {0};int n = 0;int j, i;scanf("%d", &n);for (int i = 1; i <= n; ++i) {scanf("%d", &array[i]);}for (i = 2; i <= n; ++i) {if (array[i] < array[i - 1]) {array[0] = array[i];for (j = i - 1; array[j] > array[0]; j--) {array[j + 1] = array[j];}array[j + 1] = array[0];}}for (i = 1; i <=n; ++i) {printf("%d ", array[i]);}
}//最大公约数
void Q5() {}

10-29

素数 矩阵移动 整数拆分 数字反转 大公约数 公倍数

//
// Created by 86184 on 2024/10/29.
//
#include <stdio.h>
#include <math.h>#define MAXSIZEvoid Q1();void Q2();void Q3();void Q4();void Q5();int dfs(int cur, int sum, int last);int main() {int n = 0;scanf("%d", &n);switch (n) {case 1:Q1();break;case 2:Q2();break;case 3:Q3();break;case 4:Q4();break;case 5:Q5();break;default:break;}return 0;
}//判断素数
void Q1() {int i, j, flag = 0;for (i = 2; i <= 100; i++) {for (j = 2; j < i; ++j)if (i % j == 0) flag = 1;if (flag != 1)printf("%d ", i);flag = 0;}
}//矩阵移动
/*1 2 3 42 3 4 1*/void Q2() {int array[128][128] = {0};int n = 0;  //数组长度int i, j;scanf("%d", &n);for (i = 0; i < n; ++i) {for (j = 0; j < n && i == 0; ++j)array[i][j] = j + 1;for (j = 0; j < n && i != 0; ++j)//上一行的每个元素向前移动一位array[i][(j - 1 + n) % n] = array[i - 1][j];}for (i = 0; i < n; ++i) {for (j = 0; j < n; ++j) {printf("%d ", array[i][j]);}putchar('\n');}}//整数拆分
int n;          // 待分解的数
int nums[100];  // 存储每个组成部分的数值
int size = 0;       // 当前组成部分的数量
int cnt = 0;        // 分解方案的数量void Q3() {scanf("%d", &n);    // 输入待分解的数nums[0] = 0;        // 初始化组成部分,第一个数为0size = 0;           // 初始化组成部分数量dfs(n, 0, 1);      // 开始分解printf("%d", cnt);  // 输出分解方案数量
}int dfs(int cur, int sum, int last) {if (cur == 0 && sum == n) {cnt++;printf("%d = %d ", n, nums[0]);for (int j = 1; j < size; ++j) {printf("+ %d ", nums[j]);}printf("\n");} else {for (int i = 1; i <= cur; i++) {if (i >= last && sum + i <= n && i < n) {nums[size] = i;size++;dfs(cur - i, sum + i, i);size--;}}}
}//数字反转
void Q4() {int x = 0, n = 0, sum = 0;scanf("%d", &n);while (n > 0) {x = n % 10;n /= 10;sum = sum * 10 + x;}printf("%d", sum);
}//最大公约数 公倍数
void Q5() {int a, b, t, c, m, n;scanf("%d%d", &a, &b);m = a;n = b;if (a < b) {t = b;b = a;a = t;}while (b != 0) {c = a % b;a = b;b = c;}printf("最大公约数为:%d\n", a);printf("最大公倍数为:%d", m * n / a);
}//‌质因数分解‌:
//
//32 = 2 × 2 × 2 × 2 × 2
//40 = 2 × 2 × 2 × 5
//‌求最大公约数‌:
//
//最大公约数是两个数的公有质因数的乘积。在这里,32和40的公有质因数是2、2和2,
//因此最大公约数 = 2 × 2 × 2 = 8‌12。
//‌求最小公倍数‌:
//
//最小公倍数是两个数的所有质因数的乘积,包括独有的质因数。在这里,
//32独有的质因数是2 × 2,40独有的质因数是5,
//因此最小公倍数 = 2 × 2 × 2 × 2 × 2 × 5 = 160‌

10-30

磁盘读写 判断素数 冒泡

//
// Created by 86184 on 2024/10/30.
//
#include <stdio.h>typedef struct Book {char BookName[128];char Editor[32];double Price;char Date[32];int number;
} Book;void Q1();void Q2();void Q3();void Q4();int Q5();int main() {int n = 0;scanf("%d", &n);switch (n) {case 1:Q1();break;case 2:Q2();break;case 3:Q3();break;case 4:Q4();break;case 5:Q5();break;default:break;}return 0;
}
//磁盘读写
void Q1() {FILE *p, *rp;Book data[128];int i, N;scanf("%d", &N);if (((p = fopen("C:\\Users\\86184\\Desktop\\code_22\\test\\in.text", "rb")) == NULL) ||((rp = fopen("C:\\Users\\86184\\Desktop\\code_22\\test\\out.text", "wb")) == NULL)) {printf("Error!");return;}for (i = 0; i < N; ++i) {fread(&data[i], sizeof(data[0]), 1, p);if (data[i].Editor == "HanMeiMei")if (fwrite(&data[i], sizeof(data[0]), 1, rp) != 1)printf("error");printf("%s %s %f %s %d\n",data[i].BookName, data[i].Editor,data[i].Price, data[i].Date, data[i].number);}fclose(p);fclose(rp);
}void Q2() {int array[128] = {1, 9, 5, 4, 2};Q3(array, 5);
}//冒泡排序
void Q3(int array[], int n) {int i, j, flag, temp;for (i = n - 1; i > 0; i--) {flag = 0;for (j = 0; j < i; ++j) {if (array[j + 1] < array[j]) {temp = array[j + 1];array[j + 1] = array[j];array[j] = temp;flag = 1;}}if (flag == 0) break;}for (i = 0; i < n; ++i) {printf("%d ", array[i]);}
}//整数拆分素数
void Q4() {int n, flag = 0;scanf("%d", &n);for (int i = 2; i < n; ++i) {if (Q5(i) == 1)if (Q5(n - i) == 1) {printf("%d = %d + %d\n", n, i, n - i);flag = 1;}}if (flag == 0) printf("不可以拆分为两个素数");
}int Q5(int n) {int isPrime = 1;for (int i = 2; i < n / 2; ++i) {if (n % i == 0) {isPrime = 0;break;}}return isPrime;
}

10-31

字符串排序

//
// Created by 86184 on 2024/10/31.
//
#include <stdio.h>
#include <string.h>
#include <malloc.h>void string_sort(char *s[], int n) {int i, j, min;char *temp;for (i = 0; i < n - 1; ++i) {min = i;for (j = i + 1; j < n; ++j) {if (strcmp(s[min], s[j]) > 0)min = j;}if (min != i) {temp = s[min];s[min] = s[i];s[i] = temp;}}
}void print(char *s[], int n) {for (int i = 0; i < n; ++i) {printf("%s ", s[i]);}
}void Q1() {char *s[128];char S[128];int n = 3;scanf("%d", &n);for (int i = 0; i < n; ++i) {s[i] = (char *) malloc(sizeof(char[128]));scanf("%s", s[i]);}string_sort(s, n);print(s, n);
}
int main() {Q1();return 0;
}

11-1

常用函数

//判断素数
int CheckPrime(int n) {int isPrime = 1;for (int i = 2; i < n / 2; ++i) {if (n % 2 == 0) {isPrime = 0;break;}}return isPrime;
}//第n个斐波那契值
int Fibonacci(int n) {if (n == 1 || n == 2) {return 1;} else {int f1 = 1, f2 = 1, f3;for (int i = 3; i <= n; ++i) {f3 = f1 + f2;f1 = f2;f2 = f3;}return f3;}
}//字符转数字
int CharToNum(char c) {if (c >= 'a' && c <= 'z')return c - 'a' + 1;else if (c >= 'A' && c <= 'Z') {return c - 'A' + 1;} else {return c - '0';}
}//数字转字符
char NumToChar(int n) {if (n >= 0 && n <= 9) {return n + '0';}// 如果 n 是小写字母的 ASCII 值(97-122)else if (n >= 97 && n <= 122) {return n;}// 如果 n 是大写字母的 ASCII 值(65-90)else if (n >= 65 && n <= 90) {return n;}// 其他情况,返回默认值或错误标识符else {return '?'; // 可以选择返回一个特定的错误字符}
}

删除子串

//
// Created by 86184 on 2024/11/1.
//
#include <stdio.h>
#include <string.h>int Index(char s[], char t[]) {int i = 0, j = 0;int l1 = strlen(s);int l2 = strlen(t);while (i < l1 && j < l2) {if (s[i] == t[j]) {i++;j++;} else {i = i - j + 1;j = 0;}}if (j >= l2) return i - j;else return -1;
}void delete(char s[], int index, int lt) {while (lt > 0) {for (int i = index; i < strlen(s); ++i) {s[i] = s[i + 1];}lt--;}
}
//a b c d
//0 1 2 3
//a c d
//a d
//b cint main() {char s[128] = "Tomcat is a male ccatat";char t[] = "cat";int index = 0;index = Index(s, t);while (1) {if (index == -1) break;
//        printf("%d\n", index);delete(s, index, strlen(t));printf("%s ", s);index = Index(s, t);}return 0;
}
//3
//Tom is a male ccatat 15
//Tom is a male cat 14
//Tom is a male

11-3

扑克牌

//
// Created by 86184 on 2024/11/3.
//
#include <stdio.h>
#include <stdlib.h>typedef struct Card {int type; //0--红桃 1--方砖 2--黑桃 3--梅花 4--小王 5--大王int point;//1--12 小王--13 大王--14
} Card;int Compare(struct Card c1, struct Card c2) {if (c1.point > c2.point) return 1;else if (c1.point < c2.point) return -1;else {if (c1.type > c2.type) return 1;elsereturn -1;}
}void Swap(struct Card *c1, struct Card *c2) {Card temp;temp = *c1;*c1 = *c2;*c2 = temp;
}void Sort(struct Card c[], int n) {int flag = 0;for (int i = n - 1; i > 0; i--) {flag = 1;for (int j = 0; j < i; j++) {if (Compare(c[j], c[j + 1]) == 1) {Swap(&c[j], &c[j + 1]);flag = 0;}}if (flag == 1) break;}
}void Print(struct Card c[], int n) {for (int i = 0; i < n; ++i) {char *type = (char *) malloc(sizeof(char) * 128);switch (c[i].type) {case 0:type = "红桃";break;case 1:type = "方砖";break;case 2:type = "黑桃";break;case 3:type = "梅花";break;case 4:type = "小王";break;case 5:type = "大王";break;}if (c[i].point == 13)printf("%s\n", "小王");else if (c[i].point == 14)printf("%s\n", "大王");elseprintf("%s:%d\n", type, c[i].point);}
}int main() {struct Card c[128] = {{1, 1},{2, 10},{2, 6},{3, 6},{4, 13},{4, 14}};Sort(c, 6);Print(c, 6);return 0;
}

奇偶交替

//
// Created by 86184 on 2024/11/3.
//
#include <stdio.h>void JudgeNum(int n) {int flag = 1;//2321//12321int temp = n;while (temp > 10) {if (temp % 10 == temp / 10 % 10) {flag = 0;break;}temp /= 10;}if (flag == 1) printf("%d是奇偶交替数!\n", n);if (flag == 0) printf("%d不是奇偶交替数!\n", n);
}int main() {JudgeNum(12321);JudgeNum(2321);JudgeNum(232);JudgeNum(22);
}

相关文章:

代码笔录1

10-16 出入栈序列是否合法 // // Created by 86184 on 2024/10/16. // #include <stdio.h>//IIOOOIO int jude(char s[]) {int count 0, i 0;while (s[i] ! \0) {if (s[i] I) count;else if (s[i] O) count--;else return 0;if (count < 0) return 0;i;}if (cou…...

强网杯2024 Web WP

强网杯2024 参考链接&#xff1a;https://mp.weixin.qq.com/s/Mfmg7UsL4i9xbm3V3e5HMA https://mp.weixin.qq.com/s/vV_II8TpyaGL4HUlUS57RQ PyBlockly 源码&#xff1a; from flask import Flask, request, jsonify import re import unidecode import string import ast …...

《双指针篇》---盛最多水的容器_Java(中等但简单)

题目传送门 1.首先计算出暂时的盛水体积 2.求暂时体积和最大体积max的最大值 3.更新right和left。如果height[left] > height[right] 那么right--否则left; class Solution {public int maxArea(int[] height) {int left 0,right height.length-1; int ret 0;while (lef…...

Linux: network: 环境:网络burst的一个原因,虚拟机感染病毒导致,外部网络设备太忙

最近碰到一个问题&#xff0c;测试人员在测试一周内的产品稳定性&#xff0c;带有的业务非常大。 总是不能满足需要的时长&#xff0c;总是在一段时间内出现丢包&#xff0c;业务出现错误的现象。从tshark/tcpdump的抓包看&#xff0c;确实在某个时间段&#xff0c;有一次十几秒…...

idea使用Translation插件实现翻译

1.打开idea&#xff0c;settings&#xff0c;选择plugins&#xff0c;搜索插件Translation&#xff0c;安装 2.选择翻译引擎 3.配置引擎&#xff0c;以有道词典为例 3.1 获取应用ID&#xff0c;应用秘钥 3.1.1 创建应用 点击进入有道智云控制台 3.1.2 复制ID和秘钥 3.2 idea设…...

[OS] sys_mmap() 函数+

流程图分析 1. 调用 sys_mmap() 步骤&#xff1a;当用户程序调用 mmap() 时&#xff0c;操作系统会进入 sys_mmap() 函数。作用&#xff1a;这是整个 mmap() 操作的入口。系统调用的实现从这里开始。 2. 提取参数&#xff08;Fetch Argument&#xff09; 步骤&#xff1a;从…...

轧钢机辊道多电动机传动控制系统

轧钢机辊道多电动机传动控制系统是一种复杂的工业自动化系统&#xff0c;主要用于控制轧钢车间中多个电动机驱动的辊道&#xff0c;以实现轧件的高效、稳定输送和加工。以下是对该系统的详细介绍&#xff1a; 系统组成 轧线辊道TDC控制器&#xff1a;作为系统的核心控制单元&a…...

使用 Nginx 部署 Python 项目

今天的目标是完成一个 Python Web 项目的线上部署&#xff0c;我们使用最新的 Django 项目搭建一个简易的 Web 工程&#xff0c;然后基于 Nginx 服务部署该 Python Web 项目。 1. 前期准备 1.1 安装虚拟环境pyenv 使用虚拟环境逐渐成了 python 项目开发中的一种主流方式。py…...

[笔记] SQL 优化

一. 数据库设计优化 1. 选择合适的字段类型 设计表时&#xff0c;尽量选择存储空间小的字段类型&#xff1a; 整型字段&#xff1a;从TINYINT、SMALLINT、INT到BIGINT。小数类型&#xff1a;对于金额等需精确计算的数值使用DECIMAL&#xff0c;避免使用FLOAT和DOUBLE。字符串…...

【InfluxDB】InfluxDB 2.x基础概念及原理

InfluxDB简介 什么是时序数据库 时序数据库&#xff0c;全称时间序列数据库&#xff08;Time Series Database&#xff0c;TSDB&#xff09;&#xff0c;用于存储大量基于时间的数据。时序数据库支持时序数据的快速写入、持久化&#xff0c;多维度查询、聚合等操作&#xff0…...

.net Core 使用Panda.DynamicWebApi动态构造路由

我们以前是通过创建controller来创建API&#xff0c;通过controller来显示的生成路由&#xff0c;这里我们讲解下如何不通过controller&#xff0c;构造API路由 安装 Panda.DynamicWebApi 1.2.2 1.2.2 Swashbuckle.AspNetCore 6.2.3 6.2.3添加ServiceAction…...

Spring框架和Spring Boot框架都使用注解来简化配置和提高开发效率,但它们之间存在一些区别

Spring框架和Spring Boot框架都使用注解来简化配置和提高开发效率&#xff0c;但它们之间存在一些区别&#xff1a; Spring框架注解&#xff1a; Autowired&#xff1a;自动导入对象到类中&#xff0c;被注入的类需要被Spring容器管理。Component、Repository、Service、Contro…...

从数据提取到管理:TextIn平台的全面解析与产品体验

一、引言 在现代信息时代&#xff0c;文档解析和管理已经成为企业和开发者不可或缺的工具。TextIn是合合信息旗下的一款智能文档处理平台&#xff0c;为开发者和企业提供高效、精准的文档解析工具&#xff0c;帮助用户轻松应对各种复杂的文档处理需求。本文将深入探讨TextIn的…...

2024 Rust现代实用教程 Error错误处理

文章目录 一、错误处理之&#xff1a;Result、Option以及panic!宏1.Result2.Option3.panic! 二、错误处理之&#xff1a;unwrap()与?1.unwrap()2.&#xff1f;运算符 三、自定义一个Error类型参考 一、错误处理之&#xff1a;Result、Option以及panic!宏 Rust中的错误可以分为…...

android 逆向破解360加固(MT管理器反编译)

1.需要准备的环境MT管理器 2.一台root手机 3,需要给app脱壳https://nop.gs/在这里脱壳 4.将脱壳的文件解压之后解压 5.用MT管理器打开需要反编译破解的app 6.然后把脱壳的classes.dex添加到破解的app里面删除原来的classes.dex 7.删除360加固的so,so在assets文件里面删除libjia…...

使用 SSH 蜜罐提升安全性和记录攻击活动

文章目录 使用 SSH 蜜罐提升安全性和记录攻击活动前言整体逻辑讲解安全最佳实践蜜罐的类型与选择数据分析与响应进一步学习资源修改 SSH 服务端口部署 FakeSSHFakeSSH 简介部署步骤记录攻击 部署 SSHSameSSHSame 简介部署步骤观察攻击行为 总结 使用 SSH 蜜罐提升安全性和记录攻…...

无人机拦截捕获/直接摧毁算法详解!

一、无人机拦截捕获算法 网捕技术 原理&#xff1a;抛撒特殊设计的网具&#xff0c;捕获并固定无人机。 特点&#xff1a; 适用于小型无人机。 对无人机的损害较小&#xff0c;基本不影响其后续使用。 捕获成功率较高&#xff0c;且成本相对较低。 应用实例&#xff1a;…...

后端eclipse——文字样式:UEditor富文本编辑器引入

目录 1.富文本编辑器的优点 2.文件的准备 3.文件的导入 导入到项目&#xff1a; 导入到html文件&#xff1a; ​编辑 4.富文本编辑器的使用 1.富文本编辑器的优点 我们从前端写入数据库时&#xff0c;文字的样式具有局限性&#xff0c;不能存在换行&#xff0c;更改字体…...

thinkphp6 redis 哈希存储方式以及操作函数(笔记)

逻辑&#xff1a;如果redis里没有指定表数据就进行存储再输出&#xff0c;如果有就直接输出&#xff0c;代码优化后几万条数据从数据库入redis也是三四秒的时间&#xff0c;数据以json方式存储&#xff1a;key用于数据ID 跟数据库数据ID同步&#xff0c;value用于存储整个字段包…...

「Mac畅玩鸿蒙与硬件28」UI互动应用篇5 - 滑动选择器实现

本篇将带你实现一个滑动选择器应用&#xff0c;用户可以通过滑动条选择不同的数值&#xff0c;并实时查看选定的值和提示。这是一个学习如何使用 Slider 组件、状态管理和动态文本更新的良好实践。 关键词 UI互动应用Slider 组件状态管理动态数值更新用户交互 一、功能说明 在…...

Linux应用开发之网络套接字编程(实例篇)

服务端与客户端单连接 服务端代码 #include <sys/socket.h> #include <sys/types.h> #include <netinet/in.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <arpa/inet.h> #include <pthread.h> …...

TDengine 快速体验(Docker 镜像方式)

简介 TDengine 可以通过安装包、Docker 镜像 及云服务快速体验 TDengine 的功能&#xff0c;本节首先介绍如何通过 Docker 快速体验 TDengine&#xff0c;然后介绍如何在 Docker 环境下体验 TDengine 的写入和查询功能。如果你不熟悉 Docker&#xff0c;请使用 安装包的方式快…...

零基础设计模式——行为型模式 - 责任链模式

第四部分&#xff1a;行为型模式 - 责任链模式 (Chain of Responsibility Pattern) 欢迎来到行为型模式的学习&#xff01;行为型模式关注对象之间的职责分配、算法封装和对象间的交互。我们将学习的第一个行为型模式是责任链模式。 核心思想&#xff1a;使多个对象都有机会处…...

以光量子为例,详解量子获取方式

光量子技术获取量子比特可在室温下进行。该方式有望通过与名为硅光子学&#xff08;silicon photonics&#xff09;的光波导&#xff08;optical waveguide&#xff09;芯片制造技术和光纤等光通信技术相结合来实现量子计算机。量子力学中&#xff0c;光既是波又是粒子。光子本…...

在Ubuntu24上采用Wine打开SourceInsight

1. 安装wine sudo apt install wine 2. 安装32位库支持,SourceInsight是32位程序 sudo dpkg --add-architecture i386 sudo apt update sudo apt install wine32:i386 3. 验证安装 wine --version 4. 安装必要的字体和库(解决显示问题) sudo apt install fonts-wqy…...

处理vxe-table 表尾数据是单独一个接口,表格tableData数据更新后,需要点击两下,表尾才是正确的

修改bug思路&#xff1a; 分别把 tabledata 和 表尾相关数据 console.log() 发现 更新数据先后顺序不对 settimeout延迟查询表格接口 ——测试可行 升级↑&#xff1a;async await 等接口返回后再开始下一个接口查询 ________________________________________________________…...

CRMEB 中 PHP 短信扩展开发:涵盖一号通、阿里云、腾讯云、创蓝

目前已有一号通短信、阿里云短信、腾讯云短信扩展 扩展入口文件 文件目录 crmeb\services\sms\Sms.php 默认驱动类型为&#xff1a;一号通 namespace crmeb\services\sms;use crmeb\basic\BaseManager; use crmeb\services\AccessTokenServeService; use crmeb\services\sms\…...

Cilium动手实验室: 精通之旅---13.Cilium LoadBalancer IPAM and L2 Service Announcement

Cilium动手实验室: 精通之旅---13.Cilium LoadBalancer IPAM and L2 Service Announcement 1. LAB环境2. L2公告策略2.1 部署Death Star2.2 访问服务2.3 部署L2公告策略2.4 服务宣告 3. 可视化 ARP 流量3.1 部署新服务3.2 准备可视化3.3 再次请求 4. 自动IPAM4.1 IPAM Pool4.2 …...

篇章二 论坛系统——系统设计

目录 2.系统设计 2.1 技术选型 2.2 设计数据库结构 2.2.1 数据库实体 1. 数据库设计 1.1 数据库名: forum db 1.2 表的设计 1.3 编写SQL 2.系统设计 2.1 技术选型 2.2 设计数据库结构 2.2.1 数据库实体 通过需求分析获得概念类并结合业务实现过程中的技术需要&#x…...

qt+vs Generated File下的moc_和ui_文件丢失导致 error LNK2001

qt 5.9.7 vs2013 qt add-in 2.3.2 起因是添加一个新的控件类&#xff0c;直接把源文件拖进VS的项目里&#xff0c;然后VS卡住十秒&#xff0c;然后编译就报一堆 error LNK2001 一看项目的Generated Files下的moc_和ui_文件丢失了一部分&#xff0c;导致编译的时候找不到了。因…...