C语言

C语言中关于返回局部指针变量与引用

 原则:尽量不要返回一个局部变量的指针或引用,因为函数执行完之后,将释放分配给局部变量的存储空间,局部变量只是临时的存储空间,此时,对局部变量的引用和地址就会返回不确定的内存,但可以返回局部变量本身,局部变量实际上是返回变量值的拷贝,虽然在函数调用结束后所在内存会被释放回收掉,但返回值不是地址,而是局部变量的...

C语言scanf()函数

scanf()函数基础扩充:   C函数库包含了多个输入函数,其中最常用的差不多就是scanf()了,它可以读取各种格式的输入。  scanf()可以把输入的字符串转换成我们想要的各种形式,整数、浮点数、字符串等等,它是printf()的逆过程。和printf()一样都有控制字符串和参数列表,不同的是scan...
代码星球·2020-05-05

C语言memset函数详解

memset()的作用:在一段内存块中填充某个给定的值,通常用于数组初始化与数组清零。它是直接操作内存空间,mem即“内存”(memory)的意思。该函数的原型为:#include<string.h>void*memset(void*s,intc,unsignedlongn);函数的...
代码星球·2020-05-03

C语言typedef详解

 原文链接C语言允许用户使用typedef关键字来定义自己习惯的数据类型名称,来替代系统默认的基本类型名称、数组类型名称、指针类型名称与用户自定义的结构型名称、共用型名称、枚举型名称等。一旦用户在程序中定义了自己的数据类型名称,就可以在该程序中用自己的数据类型名称来定义变量的类型、数组的类型、指针变量的类型与...
代码星球·2020-04-29

C语言字符串函数总结

 原文链接函数名:stpcpy功 能: 拷贝一个字符串到另一个用 法: char *stpcpy(char *destin, char *source);程序例: #include <stdio.h>...

C语言拼接字符串 -- 使用strcat()函数

【头文件】#include<string.h>【原型】1char *strcat(char *dest, const char *src);【参数】:dest为目标字符串指针,src为源字符串指针。strcat()会将参数src字符串复制到参数dest所指的...

C语言实现—学生成绩管理系统

开发环境:Linux开发语言:C相关文件下载:码云:传送门GitHub:传送门程序主界面:​相关功能:参考码云中的文档/****************************************************************************************************...

C语言宏定义和宏定义函数

C语言宏定义和宏定义函数宏定义可以帮助我们防止出错,提高代码的可移植性和可读性等。  在软件开发过程中,经常有一些常用或者通用的功能或者代码段,这些功能既可以写成函数,也可以封装成为宏定义。那么究竟是用函数好,还是宏定义好?这就要求我们对二者进行合理的取舍。  我们来看一个例子,比较两个数或者表达式大小,首先我们把它写...

转:C语言inline详细讲解

本文介绍了GCC和C99标准中inline使用上的不同之处。inline属性在使用的时候,要注意以下两点:inline关键字在GCC参考文档中仅有对其使用在函数定义(Definition)上的描述,而没有提到其是否能用于函数声明(Declare)。从inline的作用来看,其放置于函数声明中应当也是毫无作用的:inli...
代码星球·2020-04-21

C语言单链表逆置的代码实现 (简单易懂版)

  嗯,,这是自己写的第一篇博客哈,写的不好大家不要见怪,主要是想把自己的一些思想分享给大家。也欢迎大家指出错误,一同进步。   话不多说,直接先说想法。要把一个单链表逆置,可以大致分为下列几步。先创建一个链表。然后要考虑到链表的逆置实现。最后是链表的输出。有了这样过几步大概的想法之后,我们便要来一步步的实现...

C语言----输入输出语句(基础篇二)

  今天整理一下自己的基础篇输入和输出的理解,自己没有研究系统输入和输出函数,以后有时间在去深究,之前在别人的博客里面看到这么一句话分享给大家,“学习就是一个不断抄袭,模仿,练习和创新的一个过程”。  使用VC20151.创建项目,【文件】》【新建】》【项目】   2.项目类型为【Wi...

C语言一行太长的换行处理

转载:https://blog.csdn.net/baiqishijkh/article/details/79236202在C语言程序编写中,我们有时会遇到一行代码太长而影响阅读或者出现与部分公司或组织要求的编码规范不符的情况,此时我们需要将这行代码分成多行来写。一、针对一般语句换行使用结尾作为换行标记在编译时,后面的...

C语言 模2除法

 C语言中的模2除法:模2除做法与算术除法类似,但每一位除(减)的结果不影响其它位,即不向上一位借位。所以实际上就是异或。然后再移位移位做下一位的模2减。步骤如下:a、用除数对被除数最高n位做模2减,没有借位。(模2减规则:0-0=00-1=11-0=11-1=0)b、除数右移一位,若余数最高位为1,商为1,...
代码星球·2020-04-21

c语言中堆栈和静态空间

什么是堆空间、栈空间与静态空间堆空间:由程序员自己分配空间,如malloc需要指定分配多少个多大的字节空间,不用的时候需要自己释放栈空间:栈空间是由系统自动分配与释放,如int,char等大小都已固定,局部变量,函数的参数值等静态空间:全局变量、静态变量存放在静态空间中 http://www.cnblogs....
代码星球·2020-04-18

C语言面试基础知识整理

(1)预编译又称预处理,是做些代码文本的替换工作,即程序执行前的一些预处理工作。主要处理#开头的指令,如拷贝#include包含的文件代码、替换#define定义的宏、条件编译#if等。(2)何时需要预编译:a.总是使用不经常改动的大型代码体;b.程序由多个模块组成,所有模块都使用一组标准的包含文件和相同的编译选项。在...