![](https://img-blog.csdnimg.cn/2019092715111047.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
C语言笔记
主要是以代码示例来说明问题,比较通俗易懂。
♚ Painting
想要爱自己的人以及自己爱的人生活的更好,那么自己就要不断努力。
在你想要放弃的时候,想想是什么让你当初坚持走到了这里。——科比
展开
-
C++链表及其创建
链表是由一系列连接在一起的结点构成,其中的每个结点都是一个数据结构。链表的结点通常是动态分配、使用和删除的,允许链表在程序运行时增大或缩小。如果需要将新信息添加到链表中,则程序只需分配另一个结点并将其插入到系列中。如果需要从链表中删除特定的信息块,则程序将删除包含该信息的结点。链表相对于数组的优点尽管链表的编码和管理比数组更复杂,但它们有一些明显的优势。首先,链表可以容易地扩大或缩小。实际上,程序员并不需要知道链表中有多少个结点。它们只是根据需要在内存中创建。**链表对于数组的优势是结点可以插入链表转载 2020-09-11 20:50:00 · 783 阅读 · 2 评论 -
参数传递的意义和作用
我们先来考虑为什么需要参数传递。首先,函数之间共享数据是通过参数传递完成的其次,它是函数封装的体现。(1)外界对函数的影响仅限于传递的参数,把函数内的具体实现细节对外隐藏,只要参数不变,不影响函数的使用(2)函数对外界的影响仅限于函数的返回值以及传数组及指针形参那么有几种参数传递形式呢?下面我们就来依次介绍!一.参数传递——值传递方式:函数的形参的类型为简单变量当实参传递形参时,系统会建立一份实参的拷贝给形参。当函数调用完毕,这份实参的拷贝消失。特点:传值调用不会影响实参的值二.参数传原创 2020-05-28 22:04:48 · 2632 阅读 · 1 评论 -
如何正确输出字符串
对于这个问题,我是经常出错,但每次出错后,系统会提示哪里错了。只是返回去改改。也不会想着把它弄明白,现在总结一下,以免再犯(这里总结的或许不全,以后在遇到其他的再来改吧)1.#include<iostream>#include<cstring>using namespace std;int main(){ string str="Happy Birthday LZU!"; cout<<str;}2.利用指针字符串常量“Happy原创 2020-05-19 15:43:28 · 5893 阅读 · 1 评论 -
引用变量及其作用
首先,先来明白一下什么是引用。原创 2020-05-16 10:58:24 · 2431 阅读 · 0 评论 -
C++中一些常见函数总结
1.strcmp函数一般形式:strcmp(字符串1,字符串2)功能:比较两个字符串的大小比较方式:两个字符串自左向右逐个字符相比(按ASCII值大小相比较)直到遇到不同的字符或遇‘\0’为止。(1)字符串1=字符串2 返回0(2)字符串1>字符串2 返回一个正整数(不是1)(3)字符串1<字符串2 返回一个负整数(不是-1)特别注意:strcmp(char * s1, char * s2) 这里面只能比较字符串,不能比较数字等其他形式的参数。示例:#i原创 2020-05-12 18:23:26 · 336 阅读 · 0 评论 -
函数的声明和调用
函数调用函数调用分形参和实参。形参:位置:出现在被调函数的定义中int add(int x,int y)作用:定义了函数对外的接口特点:局部变量实参:位置:出现在主调函数中作用:调用时,为被调函数的形参提供实际值特点:表达式函数如何调用?主调函数通过函数名调用被调函数,如果被调函数有形参,则主调函数中的函数调用语句须给出对应的实际参数;调用格式:函数名 (实参表)调用方法:1.有返回值:m=funMax(x,y); //表达式形式的调用2.无返回值:fun(a,b); /原创 2020-05-09 07:00:07 · 1734 阅读 · 2 评论 -
二级指针
最近这个二级指针可是把我搞得晕乎乎的,所以稍微弄明白点的我赶紧来写了个博客。先来个简单的int *p,**pp;int i=5;p=&i;cout<<*p<<endl;pp=&p;cout<<**pp<<endl;运行结果:55这个还是比较好理解的。但下面的指针数组和二级指针用在一起就。。。先来一个cha...原创 2020-05-07 07:15:32 · 217 阅读 · 2 评论 -
C++中的set函数用法详解
1.关于setC++ STL 之所以得到广泛的赞誉,也被很多人使用,不只是提供了像vector, string, list等方便的容器,更重要的是STL封装了许多复杂的数据结构算法和大量常用数据结构操作。vector封装数组,list封装了链表,map和set封装了二叉树等,在封装这些数据结构的时候,STL按照程序员的使用习惯,以成员函数方式提供的常用操作,如:插入、排序、删除、查找等。让用户在...转载 2020-05-04 16:50:34 · 5044 阅读 · 0 评论 -
指针数组 数组指针
指针数组和数组指针的形成的根本原因就是运算符的优先级问题.char (*p)[n];//p先和*结合,故是一个数组指针,即指针指向一个数组char *p[n];//p先和[n]结合,故是一个指针数组,即数组里面的成员是指针指针数组例:char *arr[4]={"hello","world","shannxi","xian"};数组arr[4]的四个指针元素,分别存放着这四个字符串...转载 2020-05-03 10:51:23 · 126 阅读 · 0 评论 -
指向指针指针变量的指针变量
*通过的个数可以区分指针的级别,**表示表示指向指针的指针***表示的是指向指针的指针的指针。以此类推。 int i=3; int *pi=&i;//pi指向一个int型的数 int **ppi=π//ppi指向一个int型的指针 cout<<"*pi="<<*pi<<endl; cout<&l...原创 2020-04-30 13:36:29 · 469 阅读 · 0 评论 -
指针变量自增自减总结以及指针结合优先级的示例
指针变量的自增和变量的自增自减还是有很大的差别的。指针增一就是内存地址进入下一位,而且根据指针变量的类型不同而不同。比如整型指针变量增一就是加4,因为一个整型数据在内存中占四个字节。对最后一个(d)做一下解释。int i=3;int x;int *p;*p=&i;x=++(*p);//相当于x=++i对于指针的自增自减,用数组的例子可能会更好理解,所以下面我用数组的例子来...原创 2020-04-30 13:21:28 · 1643 阅读 · 1 评论 -
大佬们,向你们讨教个问题,这个代码不知道错哪了,就是提交成功不了
题目:小蒜认为如果一个字符串中每个字符出现的次数都是偶数次,那么这个字符串是美丽的;现在给你一个字符串 s,长度不超过 100,请判断这个字符串是否是美丽的。示例:输入:abaccaba输出:Yes输入:hthth输出:No代码:**#include<iostream>using namespace std;int main(){ char a[100];...原创 2020-04-16 10:11:05 · 337 阅读 · 1 评论 -
用质数的例题来对函数调用做简单讲解
最近一直做有关质数的题,用的都是函数调用的方法,也算是把函数调用弄清楚了。就是其实主函数就一个,是下面的main函数,我现在要对输入的数据进行判定,所以我又定义了一个函数,这个函数的作用就是在下面函数中对输入数据进行判断,输入的数据在下面的主函数中,我对输入数据判定时便对上面的函数进行调用,用上面新定义的函数对输入的数据进行判断。先来看一个简单的质数题。1.输入一个正整数 nn,判断 n 是...原创 2020-04-11 12:00:34 · 1112 阅读 · 0 评论