摘要: 1:使用+可以将两个string 字符串连接起来。同时,string还支持标准输入输出函数。代码如下: // 6.20.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include <iostream> #include <string> using na 阅读全文
posted @ 2017-09-18 08:43 一串字符串 阅读(1211) 评论(0) 推荐(0) 编辑
摘要: 1:头文件 #include <string> 声明一个string变量,形式如下: std::string s; 初始化string类型的变量: std::string s1("字符串"); std::string s2="字符串"; std::string s3=(3,'A');//s3的内容为 阅读全文
posted @ 2017-09-17 21:43 一串字符串 阅读(533) 评论(0) 推荐(0) 编辑
摘要: 1:有时在获得一定的信息之前,我们并不确定数组的大小。动态分配数组则可以使用变量作为数组的大小,使数组的大小符合我们的要求。 2:科普一下斐波纳契数列:斐波那契数列指的是这样一个数列 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233,377,610,987 阅读全文
posted @ 2017-09-17 14:51 一串字符串 阅读(528) 评论(0) 推荐(0) 编辑
摘要: 1:代码如下: // 6.17.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include<iostream> using namespace std; void mix(int (*a)[4],int m)//形参是定义一个指向数组的指针 //进行比较 阅读全文
posted @ 2017-09-17 11:08 一串字符串 阅读(1063) 评论(0) 推荐(0) 编辑
摘要: 1:代码如下 // 6.15.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include <iostream> using namespace std; void main() { char str1[50], str2[30], *p1, *p2; p 阅读全文
posted @ 2017-09-17 10:04 一串字符串 阅读(3441) 评论(0) 推荐(0) 编辑
摘要: 1:字符数组是一个一维数组,引用字符数组的指针为字符指针,字符指针就是指向字符型内存空间的指针变量。 char *p; char *string="www.mingri.book"; 2:实例,通过指针连接两个字符数组,代码如下: // 6.14.cpp : 定义控制台应用程序的入口点。 // #i 阅读全文
posted @ 2017-09-17 09:24 一串字符串 阅读(3232) 评论(0) 推荐(0) 编辑
摘要: 1:代码如下: // 6.13.cpp : 定义控制台应用程序的入口点。 // #include"stdafx.h" #include<iostream> using namespace std; void main() { int a[3][4]; int (*b)[4];//指向int数组的指针 阅读全文
posted @ 2017-09-17 09:06 一串字符串 阅读(268) 评论(0) 推荐(0) 编辑
摘要: 1:以a[4][3]为例 a代表二维数组的地址,通过指针运算符可以获取数组中的元素 (1)a+n代表第n行的首地址 (2)&a[0][0]既可以看作第0行0列的首地址,同样也可以被看作是二维数组的首地址。&a[m][n]就是第m行n列元素的地址 (3)&a[0]是第0行的首地址,当然&a[n]就是第 阅读全文
posted @ 2017-09-17 08:48 一串字符串 阅读(1828) 评论(0) 推荐(0) 编辑
摘要: 1:代码如下: // 6.11.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include <iostream> #include <iomanip> using namespace std; void main() { int a[4][3]={1,2 阅读全文
posted @ 2017-09-17 08:17 一串字符串 阅读(1114) 评论(0) 推荐(0) 编辑
摘要: 1:代码如下: // 6.10.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include <iostream> using namespace std; void main() { int array1[3][4]={{1,2,3,4}, {5,6,7 阅读全文
posted @ 2017-09-17 08:06 一串字符串 阅读(914) 评论(0) 推荐(0) 编辑
摘要: 1:通过指针引用数组,需要先声明一个数组,再声明一个指针。 int a[10]; int *p; 然后通过&运算符获取数组中元素的地址,再将地址值赋给指针变量。 p=&a[0]; 代码实例如下: // 6.9.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" # 阅读全文
posted @ 2017-09-16 18:49 一串字符串 阅读(570) 评论(0) 推荐(0) 编辑
摘要: 1:使用标准输入函数cin和格式化输入函数scanf时都存在这样一个问题:当输入空格时,程序不会接受空格符之后的内容内容。 输入函数gets_s与输出函数puts都只以结束符'\0'作为输入\输出结束的标志。 代码如下: // 6.8.cpp : 定义控制台应用程序的入口点。 // #include 阅读全文
posted @ 2017-09-16 18:18 一串字符串 阅读(1204) 评论(0) 推荐(0) 编辑
摘要: 1:strcmp函数,用于比较两个字符串。格式如下: strcmp(字符数组名1,字符数组名2) 按照ASCII码,按顺序比较两个数组中的字符,并由函数返回值返回比较结果的执行过程。 (1)各自选中自身的第一个字符:字符1、字符2. (2)若字符1>字符2,则返回值为一正数。 (3)若字符1<字符2 阅读全文
posted @ 2017-09-16 18:02 一串字符串 阅读(2218) 评论(0) 推荐(0) 编辑
摘要: 1:字符串复制函数strcpy的格式如下: strcpy(字符数组名,字符串) 其作用是把字符串中的字符串复制到字符数组中。需要注意的是,字符串结束标志'\0'也一同被复制。 注意是将后面的内容复制给前面 代码如下: // 6.6.cpp : 定义控制台应用程序的入口点。 // #include"s 阅读全文
posted @ 2017-09-16 15:21 一串字符串 阅读(1414) 评论(0) 推荐(0) 编辑
摘要: 1:运行代码如下: // 6.5.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include<iostream> using std::cout; using std::endl; using std::cin; void main() { char s 阅读全文
posted @ 2017-09-16 15:12 一串字符串 阅读(366) 评论(0) 推荐(0) 编辑
摘要: 1:代码如下: // 6.4.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include<iostream> using namespace std; void main() { int i; char array[12]={'H','E','L','L 阅读全文
posted @ 2017-09-16 14:52 一串字符串 阅读(741) 评论(0) 推荐(0) 编辑
摘要: 1:为字符串数组赋值的方式有两种,即数组元素逐一赋值和使用聚合方式赋值。 为数组元素逐一赋值。例如: pWord[0]='H'; 使用聚合方式赋值如: char pWord[]={'H','E','L','L','O'}; 2:字符数组的一些说明 (1)聚合方式只能在数组声明的时候使用 char p 阅读全文
posted @ 2017-09-16 10:46 一串字符串 阅读(3336) 评论(0) 推荐(0) 编辑
摘要: 1:一维数组的初始化有两种,一种是单个逐一赋值,一种是使用聚合方式赋值。聚合方式的例子如下: int a[3]={1,2,3}; int a[]={1,2,3};//编译器能够获得数组元素的个数 int a[5]={1,2,3};//前3个元素被赋值,后2个元素的值为0 2:二维数组的初始化也分为单 阅读全文
posted @ 2017-09-16 10:05 一串字符串 阅读(1674) 评论(0) 推荐(0) 编辑
摘要: 1:代码如下: // 6.1.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include <iostream> using namespace std; void main() { int i,a[10]; //利用循环,分别为10个元素赋值 for(i 阅读全文
posted @ 2017-09-16 09:25 一串字符串 阅读(151) 评论(0) 推荐(0) 编辑
摘要: 1:使用字面值(如1、3.15f、true),或者表达式等临时变量作为函数实参传递时,按左值引用传递参数会被编译器阻止。而进行值传递时,将产生一个和参数同等大小的副本。C++11提供了右值引用传递参数,不申请局部变量,也不会产生参数副本。 // 5.20.cpp : 定义控制台应用程序的入口点。 / 阅读全文
posted @ 2017-09-16 09:18 一串字符串 阅读(4275) 评论(0) 推荐(0) 编辑
摘要: 1:引用传递参数与指针传递参数能达到同样的目的。指针传递参数也属于一种值传递,其传递的是指针变量的副本。如果使用指针的引用,就可以达到在函数体内改变指针地址的目的。运行代码如下: // 5.19.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include 阅读全文
posted @ 2017-09-16 08:51 一串字符串 阅读(326) 评论(0) 推荐(0) 编辑
摘要: 1:在C++中,函数参数的传递方式主要有两种,即值传递和引用传递。值传递是指在函数调用时,将实际参数的值赋值一份传递到调用函数中,这样如果在调用函数中修改了参数的值,其改变将不会影响到实际参数的值。而引用传递则恰恰相反,如果函数按引用方式传递,那么在调用函数中修改了参数的值,其改变会影响到实际参数。 阅读全文
posted @ 2017-09-15 16:47 一串字符串 阅读(309) 评论(0) 推荐(0) 编辑
摘要: 1:右值引用的定义: 类型 && i=被引用的对象; 左值与右值的区别在于,右值是临时变量,例如,函数的返回值,并且无法被改变。 当右值引用被初始化后,临时变量消失。 代码如下: // 5.17.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include 阅读全文
posted @ 2017-09-15 16:36 一串字符串 阅读(186) 评论(0) 推荐(0) 编辑
摘要: 1:如不加特殊说明,一般认为引用指的都是左值引用。引用实际上是一种隐式指针,它为对象建立一个别名,通过操作符&来实现,引用的形式如下: 数据类型 & 表达式; 例如: int a=10; int & ia=a; ia=2; 上面的程序定义了一个引用变量ia,它是变量名a的别名,对ia的操作与对a的操 阅读全文
posted @ 2017-09-15 15:20 一串字符串 阅读(303) 评论(0) 推荐(0) 编辑
摘要: 1:正确的步骤应该是如下代码所示: // 5.15.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include <iostream> void swap(int* a,int* b) { int temp = *a; *a = *b; *b = temp 阅读全文
posted @ 2017-09-15 15:10 一串字符串 阅读(176) 评论(0) 推荐(0) 编辑
摘要: 1:代码如下: // 5.14.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include <iostream> using namespace std; int main() { float* pF = NULL; pF = new float; *p 阅读全文
posted @ 2017-09-15 15:04 一串字符串 阅读(210) 评论(0) 推荐(0) 编辑
摘要: 1:当指针所指向的内存被销毁时,该区域不可复用。若有指针指向该区域,则需要将该指针置为空值(NULL)或者指向未被销毁的内存。 内存销毁实质上是系统判定该内存不是变成人员正常使用的空间,系统也回将它们分配给别的任务。若擅自使用被销毁内存的指针更改该内存的数据,很可能会造成意向不到的后果。 代码实例如 阅读全文
posted @ 2017-09-15 14:39 一串字符串 阅读(337) 评论(0) 推荐(0) 编辑
摘要: 1:当申请一块堆内存后,系统不会再程序执行时一句情况自动销毁它。若想释放该内存,则需要使用delete关键字。下面的代码中,可以看出堆和栈的不同。代码如下: // 5.12.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include <iostream> 阅读全文
posted @ 2017-09-15 10:02 一串字符串 阅读(249) 评论(0) 推荐(0) 编辑
摘要: 1:在程序中定义一个变量,它的值会被放入内存中。如果没有申请动态分配,它的值将会被放在栈中。栈中的变量所属的内存大小是无法被改变的,它们的产生与消亡也与变量定义的位置和存储方式有关。堆是一种与栈相对应的动态分配方式的内存。当我们申请使用动态分配方式存储某个变量时,这个变量就会被放入堆中。根据需要,这 阅读全文
posted @ 2017-09-15 09:48 一串字符串 阅读(552) 评论(0) 推荐(0) 编辑
摘要: 1:代码如下: // 5.10.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include <iostream> using std::cout; using std::endl; int* pointerGet(int* p)//定义一个返回指针类型的 阅读全文
posted @ 2017-09-15 09:25 一串字符串 阅读(307) 评论(0) 推荐(0) 编辑
摘要: 1:运行代码: // 5.9.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include <iostream> using std::cout; using std::endl; int plus(int b) { return b+1; } int m 阅读全文
posted @ 2017-09-15 09:14 一串字符串 阅读(172) 评论(0) 推荐(0) 编辑
摘要: 1:函数指针式指向函数内存的指针,一个函数在编译时被分配给一个入口地址,这个函数的入口地址就称为函数指针。可以用一个指针变量指向函数,然后通过该指针变量调用此函数。 一个函数可以返回一个整数型值、字符值、实型值等,也可以返回指针型的数据,即地址,返回值的类型是指针类型。返回指针值得函数简称指针函数。 阅读全文
posted @ 2017-09-14 18:33 一串字符串 阅读(283) 评论(0) 推荐(0) 编辑
摘要: 1:代码如下: // 5.7.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include <iostream> using namespace std; void swap(int *a,int *b) { int tmp; tmp=*a; *a=*b; 阅读全文
posted @ 2017-09-14 18:12 一串字符串 阅读(619) 评论(0) 推荐(0) 编辑
摘要: 1:同其他数据类型一样,指针也有常量,使用const关键字定义,形式如下: int i=9; int *const p=&i;//无法改变内存指向 *p=3; 将关键字const放在标识符前,表示这个数据本身是常量,而数据类型那个int*即整形指针。与其他常量一样,指针常量必须初始化。我们无法改变它 阅读全文
posted @ 2017-09-14 18:05 一串字符串 阅读(161) 评论(0) 推荐(0) 编辑
摘要: 1:代码如下: // 5.5.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include <iostream> using namespace std; int main() { int *pI = NULL; int i = 4; pI = &i; f 阅读全文
posted @ 2017-09-14 17:35 一串字符串 阅读(173) 评论(0) 推荐(0) 编辑
摘要: 1:代码如下: // 5.3.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include <iostream> using namespace std; void main() { int a=100; int *p=&a; printf("addres 阅读全文
posted @ 2017-09-14 16:34 一串字符串 阅读(350) 评论(0) 推荐(0) 编辑
摘要: 1:代码如下: // 5.2.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include <iostream> using namespace std; void main() { int *p1,*p2; int *p; //临时指针 int a,b; 阅读全文
posted @ 2017-09-14 16:16 一串字符串 阅读(2158) 评论(0) 推荐(0) 编辑
摘要: 1:代码如下: // 5.1.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include <iostream> using namespace std; void main() { int a=100; int *p=&a; printf("%d\n", 阅读全文
posted @ 2017-09-14 16:12 一串字符串 阅读(208) 评论(0) 推荐(0) 编辑
摘要: 1:名称空间,也成为名字空间、命名空间,关键字为namespace。我们经常使用这样一条语句: using namespace std; 我们要使用标准输入输出流,除了包含它们所在的头文件外,还必须使用它们的名称空间。实际上,namespace后面的std正是该名称空间的名称。它主要作用就是防止 不 阅读全文
posted @ 2017-09-14 15:52 一串字符串 阅读(478) 评论(0) 推荐(1) 编辑
摘要: 1:extern用于解决使用非本源文件的全局变量。 例如:在sample1.cpp中 int a,b; /*外部变来那个定义*/ char c; void main() { cout<<a<<endl; cout<<b<<endl; cout<<c<<endl; } 在sample2.cpp源文件中 阅读全文
posted @ 2017-09-14 15:04 一串字符串 阅读(413) 评论(0) 推荐(0) 编辑