【小白到大牛之路】交换机后台管理之登录菜单

2023-10-18 11:10

本文主要是介绍【小白到大牛之路】交换机后台管理之登录菜单,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

项目需求

用户打开交换机后台管理程序时,需要进行“登录”操作,以确认用户身份的合法性。
所以,我们需要先实现一个登录菜单,以提示用户执行相关操作。

项目实现

启动命令窗口:
在这里插入图片描述
在运行窗口输入notepad++,再单击“确定”。

在这里插入图片描述
设置notepad++的语言为C语言:
在这里插入图片描述
设置notepad++的编码为ANSI格式编码(便于再CMD中显示中文)
在这里插入图片描述
main.c
#include <stdio.h>

int main(void) {
// 打印登录菜单
printf("—交换机后台管理—\n");
printf(“1. 登录\n”);
printf(“2. 创建账号\n”);
printf(“3. 退出\n”);

return 0;

}

测试效果:
在这里插入图片描述

项目精讲

1.头文件
为什么要使用头文件
c语言的要求:函数使用前必须先“声明”(或者定义),否则编译器就不识别该函数。

printf函数的声明是在头文件stdio.h中。
#include <stdio.h> 表示把文件stdio.h中的所有内容拷贝到“这里”。
头文件的查找路径
#include <stdio.h>
<>表示,从编译器默认的库路径中去找文件stdio.h
这个默认路径,取决于编译器。不同平台下不同编译器的路径都不相同。
这个默认路径下,已经包含了c标准库所需要的所有头文件。

#include “mytest.h”
“”表示从当前目录下寻找文件mytest.h
如果在当前目录下找不到,再从编译器默认的路径中查找。

2.main函数
main函数的作用
main函数是程序的唯一入口。
也就是说,程序运行时,首先从main函数开始执行。

一个程序,必须要有一个main函数,而且也只能有一个main函数。
main函数的格式
格式1:
int main(void) {
//
}

格式2:
//具体用法在函数的参数部分,再讲解
int main(int argc , char* argv) {
//
}
main函数的返回值
main函数应该用return返回一个int类型数据,也就是说,必须返回一个整数。

一般用法:
程序成功结束,则main函数返回0
程序有异常,则返回一个大于0的整数。

3.printf函数
作用
用来向标准输出设备(默认是运行这个程序的终端,比如cmd窗口)打印信息。

实例分析
printf(“I love you!”);
打印 I love you

printf(“I love you!\nYou love me too!”);
在这里插入图片描述
\n表示换行
注意:\是一个“转义字符”,\n把n转义为“换行”

printf(“100\t200\t300”);
在这里插入图片描述
\t表示“水平制表符”,常用于对齐。

printf(“姓名:%s 年龄: %d\n”, “张三丰”, 99);
在这里插入图片描述
%s表示是字符串(字符串,就是多个字符组成的一个序列)
%d 表示一个整数

printf(“圆周率等于 %.3f”, 3.1415926);
在这里插入图片描述
%f表示输出浮点数(带小数部分的实数)
%.3f表示小数点后保留3位小数,最后一位四舍五入

## 4.常见错误

5.C程序的编译方法
为什么要编译:
程序员写的代码,属于“高级语言”,计算机不识别。计算机只能识别0和1.
所以,需要把源代码,“转换”成计算机能够识别的文件。

编译方法:
gcc hello.c -o result
对源程序hello.c进行编译,输出的可执行文件是result
(对于Windows平台的编译器gcc, 输出的可执行文件是result.exe,自动添加扩展名.exe)
gcc,是编译器,也就是专门用来加工源程序的工具。

gcc hello.c
在windows平台,等效于:gcc hello.c -o a.exe
在linux平台,等效于:gcc hello.c -o a.out
6.C程序的编译过程
在这里插入图片描述
预处理
把程序员写的源代码,进行“预加工”:
1)把#include包含的文件内容拷贝到这里
2)把宏替换成对应的内容(宏的使用,后面再讲)
3)其他预处理
预处理以后,得到的还是源程序!

编译
把预处理以后的源程序,加工成“汇编程序”。
汇编程序,是使用“汇编语言”编写的程序。
汇编语言,是一种“低级语言”,直接控制计算机的CPU,内存等。

汇编
把汇编程序,加工成二进制程序。
二进制程序,全部由0和1组成。是给计算机“阅读”的程序。

链接
把二进制程序,和所需的“库文件”,“组合加工”成计算机可以直接执行的文件。
7.C程序的注释
注释是为了让程序更方便阅读。

有两种注释方式
1.单行注释 //
2.多行注释 /* */

注意:不要为了注释而注释!

这篇关于【小白到大牛之路】交换机后台管理之登录菜单的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/232169

相关文章

JWT + 拦截器实现无状态登录系统

《JWT+拦截器实现无状态登录系统》JWT(JSONWebToken)提供了一种无状态的解决方案:用户登录后,服务器返回一个Token,后续请求携带该Token即可完成身份验证,无需服务器存储会话... 目录✅ 引言 一、JWT 是什么? 二、技术选型 三、项目结构 四、核心代码实现4.1 添加依赖(pom

Redis实现高效内存管理的示例代码

《Redis实现高效内存管理的示例代码》Redis内存管理是其核心功能之一,为了高效地利用内存,Redis采用了多种技术和策略,如优化的数据结构、内存分配策略、内存回收、数据压缩等,下面就来详细的介绍... 目录1. 内存分配策略jemalloc 的使用2. 数据压缩和编码ziplist示例代码3. 优化的

SpringBoot集成XXL-JOB实现任务管理全流程

《SpringBoot集成XXL-JOB实现任务管理全流程》XXL-JOB是一款轻量级分布式任务调度平台,功能丰富、界面简洁、易于扩展,本文介绍如何通过SpringBoot项目,使用RestTempl... 目录一、前言二、项目结构简述三、Maven 依赖四、Controller 代码详解五、Service

深入解析C++ 中std::map内存管理

《深入解析C++中std::map内存管理》文章详解C++std::map内存管理,指出clear()仅删除元素可能不释放底层内存,建议用swap()与空map交换以彻底释放,针对指针类型需手动de... 目录1️、基本清空std::map2️、使用 swap 彻底释放内存3️、map 中存储指针类型的对象

Linux系统管理与进程任务管理方式

《Linux系统管理与进程任务管理方式》本文系统讲解Linux管理核心技能,涵盖引导流程、服务控制(Systemd与GRUB2)、进程管理(前台/后台运行、工具使用)、计划任务(at/cron)及常用... 目录引言一、linux系统引导过程与服务控制1.1 系统引导的五个关键阶段1.2 GRUB2的进化优

Spring Security 前后端分离场景下的会话并发管理

《SpringSecurity前后端分离场景下的会话并发管理》本文介绍了在前后端分离架构下实现SpringSecurity会话并发管理的问题,传统Web开发中只需简单配置sessionManage... 目录背景分析传统 web 开发中的 sessionManagement 入口ConcurrentSess

一文带你迅速搞懂路由器/交换机/光猫三者概念区别

《一文带你迅速搞懂路由器/交换机/光猫三者概念区别》讨论网络设备时,常提及路由器、交换机及光猫等词汇,日常生活、工作中,这些设备至关重要,居家上网、企业内部沟通乃至互联网冲浪皆无法脱离其影响力,本文将... 当谈论网络设备时,我们常常会听到路由器、交换机和光猫这几个名词。它们是构建现代网络基础设施的关键组成

Spring Security重写AuthenticationManager实现账号密码登录或者手机号码登录

《SpringSecurity重写AuthenticationManager实现账号密码登录或者手机号码登录》本文主要介绍了SpringSecurity重写AuthenticationManage... 目录一、创建自定义认证提供者CustomAuthenticationProvider二、创建认证业务Us

Springboot项目登录校验功能实现

《Springboot项目登录校验功能实现》本文介绍了Web登录校验的重要性,对比了Cookie、Session和JWT三种会话技术,分析其优缺点,并讲解了过滤器与拦截器的统一拦截方案,推荐使用JWT... 目录引言一、登录校验的基本概念二、HTTP协议的无状态性三、会话跟android踪技术1. Cook

Linux之UDP和TCP报头管理方式

《Linux之UDP和TCP报头管理方式》文章系统讲解了传输层协议UDP与TCP的核心区别:UDP无连接、不可靠,适合实时传输(如视频),通过端口号标识应用;TCP有连接、可靠,通过确认应答、序号、窗... 目录一、关于端口号1.1 端口号的理解1.2 端口号范围的划分1.3 认识知名端口号1.4 一个进程