
C语言基础
文章平均质量分 68
c语言的语法基础,持续更新
羊羽0322
本人是在读学生,内容供自己学习时整理使用,较为浅显,欢迎指正。
展开
-
略谈动态规划
动态规划(dynamic programming),指每一步的结果都和前面产生的结果有联系,即每一步都可以视作前面全部解的映射,步步相关,牵一发而动全身,故称作动态规划不难看出,使用动规思路解题有两个关键。其一是想清楚动规数组的下标的意义,一般从题目求解的问题出发,求什么是什么。其二是找出递推关系,并保证每个数据都能正确被递推出,否则要对特例特殊处理。原创 2024-11-28 21:32:54 · 163 阅读 · 0 评论 -
C语言指针的一些谬误
n是指向常量的指针,所以不能通过解引用n的方式进行自增自减等操作,但是对y本身操作没有问题,因为y没有限定为常量。同时,可以修改n的地址。但是,这里的显式转型是暂时的,并不改变a的类型。也可以说,显式转型只是在操作的时候用另外的方法读取变量而已,并不涉及对变量本身属性的更改。对a第一次解引用时发生显式转型,把a从原本的const int*类型看成普通的int*类型,解引用并改变值的操作合法。第二次解引用时,a仍然是const int*变量,再解引用并自增就会报错。此时x可以修改,但不能通过*a的形式修改。原创 2024-11-27 23:29:00 · 333 阅读 · 0 评论 -
C语言函数如何返回数组
我们先来看一下,根据直观直觉写出来的错误代码是怎么样的return a;错误结果`t此处表示,返回了一个局部变量的地址,也就是说,返回局部变量的地址是非法的。这里的知识与数据结构“栈”有关,我们可以暂时理解成如下语言:当函数返回一个值的时候,可以把这个值传递到外界,那么函数返回数组时,相当于返回一个地址。此时,地址和值是等价的,函数一样把地址传到了外界。但是函数的生命周期在return完之后就已经结束了,因此内存被释放。原创 2024-11-25 15:51:11 · 298 阅读 · 0 评论 -
char类型负数
对于char类型变量,储存范围是-128到127,即-128到-1,0到127,128个数,对应char一字节8位,储存2^8=256个数。对于有符号数来说,其大小有一个反直觉的地方,即-128_{2}是大于127_{2}的对于二进制数而言,有以下规律1000 0000 : -128,相当于127+1,故称第一位是符号位,此种算法保证-128是最小的负数,1000 0001 :-127,相当于-128加一那么,-128减一会发生什么呢?原创 2024-11-21 20:50:13 · 487 阅读 · 0 评论 -
C语言输入带空格的一行字符串的方法
在编写代码的过程中,我们常常会碰到需要输入带空格的字符串的问题,但常用的scanf函数却会在遍历到空白字符(如空格,\n等停止),令我们十分苦恼。所以这次让我们来介绍几种常见的方法以及对于过程中遇到问题的一些解释。原创 2024-12-12 20:27:50 · 1620 阅读 · 0 评论 -
C语言指针数组杂谈
由于指针与数组的相似性,常常在使用中令人混淆。笔者在此记录下使用指针时遇到的困难以及解决方法。解决问题时往往离不开数组,所以称为指针数组杂谈。原创 2024-12-15 17:41:11 · 273 阅读 · 0 评论 -
字符串函数
在面对字符串操作时,有大量函数可供使用,但用法常常不明,故在此介绍。原创 2024-11-19 11:40:51 · 464 阅读 · 0 评论