c语言学习
文章平均质量分 62
不倒翁*
一个热衷于编程的小猿猿
展开
-
(笔试常考题)常用字符串函数具体实现以及注意事项
文章目录1.strlen函数实现及介绍2.strcpy函数实现及介绍3.strcmp函数实现及介绍4.strcat函数实现及介绍5.strstr函数实现及介绍6.memcpy函数实现及介绍7.memove函数实现及介绍1.strlen函数实现及介绍1.字符串已经 ‘\0’ 作为结束标志,strlen函数返回的是在字符串中 ‘\0’ 前面出现的字符个数(不包含 ‘\0’ )。2.参数指向的字符串必须要以 ‘\0’ 结束。3.注意函数的返回值为size_t,是无符号的( 易错 )int my_strl原创 2021-09-23 19:24:45 · 262 阅读 · 0 评论 -
函数栈帧的创建与销毁
1.函数栈帧的概念函数栈帧:使用每一个函数都要在栈区开辟一块空间.栈帧也叫过程活动记录,是编译器用来实现过程/函数调用的 一种数据结构。对于栈,我们都知道栈是由高地址向低地址延伸的。每个函数的每次调用,都有它自己独立的一个栈帧,每个栈帧中维持着所需要的的各种信息。寄存器ebp指向当前栈帧的底部(高地址),寄存器esp指向当前栈帧的顶部(低地址)。这样我们就了解了寄存器ebp和寄存器esp中存放的是地址,这两个地址是用来维护函数栈帧的。比如:调用main函数, 我们为main函数分配栈帧空间, 那么栈帧原创 2021-09-11 14:32:42 · 1869 阅读 · 1 评论 -
C++ 演讲比赛流程管理系统设
1.功能分析要求有12个人参加比赛,将12个人分为两组,进行第一轮比赛,然后每个参赛人员有10个评委打分,去掉最高和最低分后,求出每个人的平均分,然后去出每组中的分数最高的三个人. 接着6人又进行第二轮比赛,前三名取得胜利.2.具体实现部分首先建立一个speechManage的类,里面存放演讲比赛流程实现的各个函数的申明.class SpeechManage{public: //构造函数 SpeechManage(); //显示菜单 void showmenu(); //退出比赛原创 2021-07-06 20:04:19 · 286 阅读 · 0 评论 -
C语言实现简易日历(附源码)
C语言实现简易日历首先来看程序运行的结果,首先会提示用户输入年份和月份,就会以日历的形式打印出这个月的信息.下面来看看程序设计源码:#define _CRT_SECURE_NO_WARNINGS 1 //避免vs中scanf报错#include <stdio.h>int main(){ int year = 0; int month = 0; printf("请输入年份:"); scanf("%d", &year); printf("请输入月份:"); scan原创 2021-06-29 19:07:15 · 10696 阅读 · 7 评论 -
c语言实现关机小程序,学会了快去恶搞你的小伙伴吧
首先我们来看看程序运行的效果:程序运行后,系统会提示你的电脑将一分钟后关机然后我们需要输入一些我们自己设置的内容,电脑才会取消关机.我这里设置的是:我是猪.只有输入我是猪之后,电脑才会取消自动关机,不然电脑在一分钟之内就会关机.下面介绍一下代码是怎么实现的:首先说一下要包含的头文件:#include <stdio.h>#include <string.h>#include <windows.h>#include <stdlib.h>下面是原创 2021-06-27 11:12:03 · 691 阅读 · 1 评论 -
指针中容易混淆的概念以及常见笔试题
指针文章目录指针1.字符串指针2.指针数组3.数组指针4.数组参数,指针参数5.函数指针 - 指向函数的指针6.函数指针数组7.库函数qsort的用法: qsort(void* p,int num1 , int num2 , int (*cmp)(counst void* e1, counst void* e2) )8.指针和数组练习题1.字符串指针注: void* 类型的指针可以接收任意类型的指针- void 类型的指针不能进行解引用的操作,也不能进行加减整数的操作*int main(){原创 2021-06-22 19:45:35 · 374 阅读 · 0 评论 -
C语言中的整型提升
C语言中的整型提升提到整型提升,可能刚学c语言的小伙伴们很头疼这个知识点吧,下面我就我的理解简单分析一下整型提升是怎么回事.首先还是介绍一下整型提升的概念: c的整型算术运算总是至少以缺省整型类型的精度来进行的. 为了获得这个精度,表达式中的字符和短整型操作数在使用之前被转换为普通整型,这种转换称为整型提升.整型提升是按照变量的数据类型的符号位来进行提升的.可能小伙伴们看到这个说明还是一头雾水,那么下面我通过一个具体的例子来说说整型提升到底是怎么回事.(注意看我里面注释的说明哦)i原创 2021-06-11 20:56:03 · 1222 阅读 · 5 评论 -
结构体大小的计算方法
结构体大小的计算方法相信来看这里的小伙伴们,应该都知道了计算一些基本类型的数据的大小。比如,int 占4个字节 ,char 占1个字节 ,short 占2个字节等等。那么结构体的大小怎么计算呢?要想知道结构体大小是怎么计算的,我们必须知道结构体的对齐规则,对齐规则主要包括一下4点:1.第一个成员在与结构体变量偏移量为0的地址处。2.其他成员变量要对齐到对齐数的整数倍的地址处。对齐数 = 编译器默认的一个对齐数与该成员大小的较小值。 VS中默认的值为83.结构体总大小为最大对齐数(每个成员变量都有原创 2021-06-09 20:59:29 · 2567 阅读 · 5 评论 -
C语言操作符详解
C语言操作符详解1C语言位操作符1.1右移操作符 >>右移操作符包括下面两种1.算术右移右边丢弃,左边补原符号位(常用这种)2. 逻辑右移右边丢弃,左边补0注:右移有相当于除以2的效果int main(){ //整数的二进制有:源码,反码,补码 //正数的二进制源码反码补码相同 //储存到内存的是补码,移位操作的是二进制中的补码 int a=16; //源码为:00000000 00000000 00000000 00010000 首位0代表正数 int b=原创 2021-06-07 20:01:23 · 155 阅读 · 4 评论 -
vs中scanf报错的解决方法
vs中scanf报错的解决方法在我们刚使用vs时,在使用scanf函数时会遇到下面的这种情况,会出现这种情况的,发生这种情况的原因是VS认为scanf这个函数不安全产生的,那么怎么解决呢,下面我简单说几种解决方法。1.方法一:(我推荐使用这种方法)首先找到你安装VS的路径然后按下面路径找到E:\VS2019\Common7\IDE\VC\VCProjectItems 文件夹在里面找到newc++file.cpp这个文件 ,然后将这个文件复制到桌面上用vs打开,然后将#define _CRT_S原创 2021-06-05 11:09:30 · 6878 阅读 · 2 评论