第七章——C++基础 自学之路!

不要摆烂了!快跟我一起来学电子科技大学的C++!!!
7.5函数重载


 

等价且更简单的默认形参——>

 
 
 
7.6内联函数

三目运算符#define abs(a) ((a)<0? -(a):(a)) 如果a<0 取-a 否则取a
ret 中以(++m)为a 所以++m调用了两次 所以最后ret的值为0

inline同时是一个函数,so会先进行函数参数计算并进行参数类型检查 而宏定义只是单纯的替换缺点很大

ret会先调用++M=-1 再进行int abs函数 实实在在求得++m的绝对值

7.7 常量

 
 
错因:c99标准下 const n只可读不可修改的变量

一定要初始化 赋初值

7.8构造数据类型——引用
同一个东西,多个名字叫做引用

 1.独立引用
 
因为rx是常量
2.引用作为函数参数

 
 栈中调用 实参拷贝给形参num 不改变实参
间接改变形参数据
 
 
 
7.9编程实战

#include <iostream>
using namespace std;
void printStar(int n){
	int i,j;
	for(i=1;i<=n;i++){
		for(j=0;j<n-i;j++){
			cout<<" ";
			}
		for(j=0;j<i;j++){
			cout<<"*"<<" ";
			}
		cout<<endl;
	}
	for(i=1;i<n;i++){
		for(j=1;j<=i;j++){
			cout<<" ";
			}
		for(j=0;j<n-i;j++){
			cout<<"*"<<" ";
			}
		cout<<endl;
	}
} 
int main()
{
	int n;
	cin>>n;
	printStar(n);
	system("pause");
	return 0;
} 
9.4好记星


ifsream 文件读入流 nrol 每次显示nrol行 c判断是否继续


#include <iostream>
#include <fstream>
#include <string.h>
using namespace std;
int main()
{
	
	ifstream book;
	char name[]="myBook.txt";
	const int nrol=3;
	char str[80],strBook[100][80],c='y';
	int i=0,j,k; 
	book.open(name);
	while(book.getline(str,80))//getline函数,每次最多读入80个字符,读一行字符串到str中 
	{
		strcpy(strBook[i++],str);//拷贝到strBook二维数组中 100行以内 
	}
	k=0;
	while(c!='q')
	{
		system("cls");//清屏函数
		
		for(j=0;j<nrol&&k<i;++j,++k) //k是总共读了多少行,j是这屏读多少 
			cout<<strBook[k]<<endl;
		if(k>=i)  //k>=i 所有数据读完 
			break;
		cin.get()>>c;
	}
	book.close();
	system("pause");
	return 0;
 } 不太对嘤嘤嘤~~~
本文来自博客园,作者:软工菜鸡,转载请注明原文链接:https://www.cnblogs.com/SElearner/p/17676734.html
 
                    
                 
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号