`
zhangfy068
  • 浏览: 149184 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

c++笔记

    博客分类:
  • c++
 
阅读更多

静态局部变量,我们可以在函数体内声明一个静态局部变量(Static Local Variable)。它在函数运行结束后不会消失,并且只有声明它的函数中能够使用它

 

#include "文件名" "命令则是先在当前文件所在的目录搜索是否有符合的文件,如果没有再到Include文件夹里去找对应的文件

#include <文件名>,

 

//用 sizeof 计算各类种常量的字节长度

 

cout<<"sizeof('$')="<<sizeof('$')<<endl;

 int 占 4 float 4 char 1 double 8 short 4 

sizeof("ab")=3 数组本身也占一个字节?

 

double 转 int 不会四舍五入   例:p1-20

三元写法

 Max=a>b?a:b;

 

GOTO使用

L1: cout<<"x=";

   goto L1; 

指针

 

   char str[10];

   char *strip=str;

改变此指针值的话,str也跟着被修改。

结构指针 p1-53

 struct human x={"WangPing",1,30},*p=&x;

p->name=WangPing

(*p).name=WangPing

p->name=WangPing

更多见 p1-60

函数默认参数

void disp(int x=1,int y=1,int z=1)

调用的时候disp();例如:

    disp(10);

    disp(10,20);

    disp(10,20,30);

后面没有定义的参数,采用默认值

内联函数

不能有循环,开关等语句,函数小巧1-5行

inline int max(int x,int y) 

 

数组

一位数组 a 就是首地址

二维数组 &b[0][0] 才是首地址的指针,不能&b 是错误的

 

参数为 引用,指针的区别

引用,只要定义的时候写& ,传值的时候直接传一个对象就可以改变,实参了

 

cout<<"change(student &x,float grade):"<<endl;

    change(a,360);

指针的话,就需要传一个&

 

cout<<"change1(student *p,float grade):"<<endl;

    change1(&a,375);

简单读入文件与写入文件

 

#include<iostream.h>
#include<stdio.h>
#include<string.h>
#include<process.h>
main()  {
    //声明变量
    FILE *fp1;
    char str[80];

    //从键盘上任意输入一个字符串
    cout<<"Inupt a string:";
    cin.getline(str,80);

    //以写入方式打开d.dat文件
    if ((fp1=fopen("d.dat","w"))==NULL)
    {
       cout<<"\nCould not open the file."<<endl;
       cout<<"Exiting program."<<endl;
       exit(1);   //结束程序执行
    }

    // 写"流"文件 
    fputs(str,fp1);         
    fputs("\n",fp1); 

    fclose(fp1);               	//关闭文件

    // 以读方式打开d.dat文件
    if ((fp1=fopen("d.dat","r"))==NULL) 
    {
       cout<<"\nCould not open the file."<<endl;
       cout<<"Exiting program."<<endl;
       exit(1);   //结束程序执行
    }

    // 循环从"流"文件读取字符,并显示
    char ch;
    while ((ch=fgetc(fp1))!=EOF)  
          cout<<ch;		
    cout<<endl;
    fclose(fp1); //关闭文件

}  // fseek(fp1,i,2);  2表示相对文件尾,0表示相对文件头

 

堆和栈

 

//============================================================================
// Name        : test8.cpp
// Author      : zhangfy
// Version     :
// Copyright   : Your copyright notice
// Description : Hello World in C++, Ansi-style
//============================================================================

#include <iostream>
using namespace std;

char *getString(int len)
{	int i=0,randomid;
	char temp[100]="";
	char a[52]={'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'};
	for(i=0;i<len;i++)
	{
		randomid=rand()%52;
		sprintf(temp,"%s%c",temp,a[randomid]);
		cout<<temp<<endl;
	}
	return (temp);
}

int main() {
//	cout<<<<endl;
//	fflush(stdout);
	char tmp1[255]="";
//	strcpy(tmp1,getString(100));//所以采用这种方法是不会出错滴
	printf("%s",getString(60));
/*	如果使用此种方法输出,lenth过大的时候,后面的会出现乱码。我表示

	和JAVA回收机制可能有关系,java就不会出错,在VC++中运行出现中文乱码,eclipse中console是符号乱码*/
	cout<<tmp1<<endl;
}
 

 



 

 
  • 大小: 15.4 KB
分享到:
评论

相关推荐

    千锋C++笔记.zip

    《千锋C++笔记》是一份综合性的学习资料,涵盖了C++编程语言的基础到高级概念。这份笔记由知名教育机构“千锋”提供,旨在帮助初学者和有一定基础的程序员深入理解和掌握C++这一强大的系统级编程语言。下面将详细...

    C++笔记.md

    C++笔记.md

    C++笔记初学者的期末老师

    总的来说,C++笔记对于初学者来说是一份宝贵的学习资料,它涵盖了C++的基础知识,如程序结构、面向对象特性、函数的使用等,这些都是学习C++必备的基础。通过深入理解和实践这些概念,初学者可以逐步掌握C++编程,并...

    达内C/C++笔记

    C++笔记可能涵盖了C++的更多高级特性,如模板元编程、STL的深度使用、设计模式、多线程编程、Boost库的运用等。这些内容可以帮助开发者写出更加高效、可维护的代码。 1. **模板元编程**:在编译时进行计算,减少...

    C++笔记.rar C++笔记.rar

    这份"C++笔记"包含了学习C++时的重要知识点和实践技巧。 1. **基础语法**:C++的基础包括变量、数据类型(如整型、浮点型、字符型等)、运算符(算术、比较、逻辑、位运算符等)、流程控制语句(如if-else、switch-...

    二级C++笔记.docx

    "二级C++笔记.docx" 一、选择题 1. 结构化程序设计的基本原则: 在结构化程序设计中,有四个基本原则:自顶向下、逐步求精、模块化、限制使用 goto 语句。这四个原则是软件设计的基础,遵循这些原则可以提高软件...

    自考C++笔记(上)

    "自考C++笔记(上)" 本笔记是作者全部手打创作的自考C++笔记,包含课本中例子的详细分析,共47200字,适合没有学过C语言的人认真学习和通过C++自考。 C++程序设计 ### 认识 C++的对象 #### 1.1 初识 ...

    大一下c++笔记.md

    大一下c++笔记.md

    C++笔记(1).md

    C++笔记(1).md

    c++笔记个人整理

    ### C++核心知识点详解 #### 内联函数与宏比较 内联函数是C++中一种特殊的函数,它能够在函数调用处被编译器直接替换为函数体,从而避免了函数调用的开销。这与宏有些相似,但内联函数保留了函数的所有特性,如...

    钱能的C++笔记,绝对值的珍藏.rar

    《钱能的C++笔记——绝对值的珍藏》是一份深受C++爱好者和学习者欢迎的资源,它以其详实的内容和实用价值赢得了高度评价。这份笔记主要聚焦于C++编程语言,深入探讨了其核心概念、语法特性以及编程技巧。 首先,C++...

    C++笔记.zip_C++_笔记

    本资料"**C++笔记.zip**"提供了全面的C++学习资料,特别是针对C++初学者和进阶者的一份宝贵的资源集合。 **C++基础** C++的基础部分包括语法、变量、数据类型、运算符、流程控制等。C++支持基本的数据类型如int、...

    c++笔记(David版).md

    C++笔记

    C++笔记(珍藏版)

    C++笔记(珍藏版) C++笔记(珍藏版)是从购买课程上听完之后做的笔记,涵盖了C++内的所有知识点。本文档共有30多页,涵盖C++的基础概念、语言特性、编译型语言和解释型语言的区别、C语言的诞生史、C++的派生关系、...

    c++笔记.txt

    根据提供的文件信息,可以看出这份文档主要涉及C++中的一些关键概念和知识点,特别是关于静态成员、友元类、以及常量等内容。接下来,我们将详细解释这些知识点。 ### 静态成员 静态成员(包括静态数据成员和静态...

    effective c++笔记1

    Effective C++笔记1 本笔记总结了Effective C++的第1到第11条款,涵盖了C++语言的多个方面,包括构造函数、拷贝构造函数、拷贝赋值函数、const关键字、enum、inline函数、定义域、static变量、初始化、编译器生成的...

    C++笔记

    根据提供的"C++笔记"文档内容,我们可以总结出以下关键知识点: ### 1. 数制转换与位运算 - **二进制与十进制转换**:文档中的“020202020202-&gt;ʮλȨصij˻֮ܺ”表明了如何将二进制数转换为十进制数。例如,...

    C++笔记~寒假整理

    资源是寒假在家学C++整理的,特拿出,与大家分享

    C++笔记和代码

    【C++语言基础】 C++是一种强类型、静态类型的编程语言,由Bjarne Stroustrup在C语言的基础上发展而来,增加...通过学习并实践C++笔记和代码,初学者可以逐步建立起扎实的C++基础,并为后续的进阶学习打下坚实的基础。

    C++笔记_C++_

    这份"C++笔记"涵盖了C++的核心概念和技术,旨在帮助学习者掌握这一强大的编程工具。 C++起源于C语言,由Bjarne Stroustrup在1983年为了增加面向对象编程功能而设计。C++不仅保留了C语言的效率和灵活性,还引入了类...

Global site tag (gtag.js) - Google Analytics