![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++
C++学习笔记
iamstevenlu
先是沉淀积累,再有组合创新
展开
-
PAT甲级C/C++字符串输入问题
以下总结了一些字符串输入的问题,避免在刷算法题的过程中因为输入的问题而出现答案错误。 1.cin 对于string类型,遇空格/换行符为结束的标志,但是空格/换行符仍在缓冲区中。 2.getline(cin, str) 只适用于string类型且面向行输入,遇换行符为结束标志,且丢弃换行符! 这意味着,如果从上一行的输入中留下的换行符没有被及时处理掉的话,当getline遇见换行符后,会认为此行的输入已经结束,也就意味着getline(cin,str)中的str没有得到任何的输入。 3.scanf(".原创 2020-12-29 19:19:29 · 250 阅读 · 0 评论 -
C++ 中 memset 的用法
memset是一个存放于 C 库中的函数,在 C++ 中可用cstring·来包含该头文件,函数头为void *memset(void *_Dst, int _Val, size_t _Size),其中 _Dst:表示一片连续的内存空间 _Val:表示欲往该内存中写入的值 _Size:表示的是从该内存起始位置之后的 _Size 大小的字节 我们先看一个例子: char name[20] = "Harry Potter"; printf("%s\n",name); memset(name, '*', 5)原创 2020-08-30 12:51:07 · 472 阅读 · 0 评论 -
C++中使用new动态声明二维数组的方式
C++中动态二维数组的声明方式 在C/C++中定义动态数组时我们都很熟悉使用的是 new 关键字,基本语法如下: typeName *arrayName = new typeName[arraySize]; 比如若想通过输入的 n 来创建一个数组大小为 n 的 int 型数组时,可以这样写: cin >> n; int *a = new int[n]; 通过上面这个语句我们在内存地址中分配了一片 int[n] 大小的内存空间,并将其首地址赋值给了 a ,在这里 a 是 int* 类型的指针变原创 2020-07-24 22:46:00 · 5788 阅读 · 3 评论