`
linleizi
  • 浏览: 227580 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

C++变量和数据类型学习笔记一

c++ 
阅读更多
变量是由字母、数字、下划线组成,必须是字母或者下划线开头,不能是C++关键字,不能是一些操作符。
C++标准保留关键字如下:
asm, auto, bool, break, case, catch, char, class, const, const_cast, continue, default, delete, do, double, dynamic_cast, else, enum, explicit, extern, false, float, for, friend, goto, if, inline, int, long, mutable, namespace, new, operator, private, protected, public, register, reinterpret_cast, return, short, signed, sizeof, static, static_cast, struct, switch, template, this, throw, true, try, typedef, typeid, typename, union, unsigned, using, virtual, void, volatile, wchar_t, while
一些操作符如下:
and, and_eq, bitand, bitor, compl, not, not_eq, or, or_eq, xor, xor_eq

基本数据类型:char, short int, long int, int, float, double, long double, bool, wchar_t
变量声明:数据类型 变量名,例如(int a;)。声明多个同一类型变量,数据类型 变量名1,变量名2,变量名3.……区分大小写。
(char, short, long和int)可以是有符号(signed)和无符号(unsigned)。有符号类型可以表示正数和负数,无符号类型表示正数和0。默认是有符号类型。声明时在数据类型前加上(unsigned或signed)关键字。唯一例外是字符型(char)变量。
全局变量:所有函数之外声明,可以在程序中任何地方引用。
本地变量:函数或语句块单元内声明,作用范围局限在声明它的程序范围内。
变量初始化:C++两种初始化方法,一种是声明变量时在后面加上一个等于号,并在后面跟上想要的值(例如:int a = 0;);另一种是构造函数初始化,将初始值用小括号括起来(例如:int a(0);)。
字符串:存储一个以上字符的非数字值的变量,提供string类支持,不是基本数据类型,但使用与基本类型相似,需要引用头文件<string>,并且使用using namespace 语句来使用标准名空间(std)。
"定义常量:格式是:#define identifier value 
例如:
#define PI 3.14159265
#define NEWLINE '\n'
#define WIDTH 100
此方法定义的常量被称为宏量"
"声明常量:通过const前缀,定义指定类型常量,像定义变量一样。
例如:
const int width = 100;
const char tab = '\t';
const zip = 12440;
没有指定类型,默认是整形int。"
"运算符:
赋值运算符(=);
数学运算符加减乘除取模(+,-,*,/,%);
组合运算符(+=,-=,*=,/=,%=,>>=,<<=,&=,^=,|=);a -= 5; 等同于 a = a - 5;其它运算符以此类推。
递增递减(++,--);
关系运算符(==,!=,>,<,>=,<=);
逻辑运算符(!,&&,||);
条件运算符(?);格式:condition ? result1 : result2 (条件 ? 返回值1 : 返回值2)
逗号运算符(,);用来分开多个表达式,只取最右边表达式的返回值。例如:a = (b = 3, b + 2);最后a变量的值为5。
位运算符(&,|,^,~,<<,>>);逻辑与(&),逻辑或(|),逻辑异或(^),对1取补(位反转(~)),左移(<<),右移(>>)。
变量类型转换运算符;
一种是在原转换的表达式前面加用括号()括起的新数据类型;
第二种是在要转换的表达式前加变量类型并将表达式括在括号中;
sizefo()这个运算符输入参数,该参数可以是一个变量类型或者一个变量自己,返回该变量类型或对象所占的字节数;
实际应用中要注意运算符的优先顺序。"

控制台交互:
输出流count与重载运算符<<一起使用。
cout << "Output sentence"; // 打印Output sentence到屏幕上
cout << 120; // 打印数字 120 到屏幕上
cout << x; // 打印变量 x 的值到屏幕上
带("")和不带是不同的。
<<有时候被叫做插入运算符,可以在同一语句多次使用:
cout << "Hello, " << "I am " << "a C++ sentence"; //输出Hello, I am a C++ sentence
输出语句如果希望换行,需要加上\n:
cout << "First sentence.\n ";
cout << "Second sentence.\nThird sentence.";
也可以用endl换行:
cout << "First sentence." << endl;
cout << "Second sentence." << endl;
输入(cin):
C++中的标准输入是通过在cin数据流上重载运算符>>来实现的,它后面必须跟一个变量以便存储读入的数据,例如:
int age;
cin >> age;
输入一个整型变量age然后等用户从键盘输入到cin并将输入值存储在这个变量中。
cin只能在键盘输入回车键后才能处理前面输入的内容。输入的必须符合变量类型。
可以要求用户输入多个数据,例如:
cin >> a >> b;
cin和字符串:cin只能读取一个单词,一旦碰到任何空格读取就会停止,我们可以使用getline,例如:
#include <iostream>
#include <string>
using namespace std;

int main ()
{
  string mystr;
  cout << "What's your name? ";
  getline (cin, mystr);
  cout << "Hello " << mystr << ".\n";
  cout << "What is your favorite color? ";
  getline (cin, mystr);
  cout << "I like " << mystr << " too!\n";
  return 0;
}
结果:
What's your name? Aqua
Hello Aqua.
What is your favorite color? blue
I like blue too!

字符串流:标准头文件<sstream>,例子:
// 字符串流的使用示例
#include <iostream>
#include <string>
#include <sstream>
using namespace std;

int main ()
{
  string mystr;
  float price=0;
  int quantity=0;

  cout << "Enter price: ";
  getline (cin,mystr);
  stringstream(mystr) >> price;
  cout << "Enter quantity: ";
  getline (cin,mystr);
  stringstream(mystr) >> quantity;
  cout << "Total price: " << price*quantity << endl;
  return 0;
}
输出结果:
Enter price: 22.25
Enter quantity: 7
Total price: 155.75
慢慢体会这个例子。
分享到:
评论

相关推荐

    C++整理笔记word版——01 C++学习笔记

    C++基础的学习笔记(其中的代码源件可私信留言) C++中的空头程序 使用C++书写hello world 学习变量 学习常量 标识符命名规则 数据类型 运算符 程序流程结构 数组 函数 指针 结构体

    C++基础编程 学习笔记

    C++基础编程,适合小白和跨专业的同学学习,涉及 C++介绍(注释,变量,关键字,标识符命名规则)、 数据类型(整型,sizeof关键字,实型(浮点型),字符型,布尔型,数据的输入)、 运算符(算数运算符,赋值...

    c#学习笔记.txt

    c#学习笔记(1) 51099在线学习网发布 文章来源:网络收集 发布时间:2006-05-25 字体: [大 中 小] 51099在线学习网 http://www.51099.com 1, 结构(struct) 与 类(class) [attributes] [modifiers] struct ...

    Python学习笔记整理之输入输出、python eval函数

    python中的变量声明不需要像C++、Java那样指定变量数据类型(int、float等),因为python会自动地根据赋给变量的值确定其类型。如 radius = 20,area = radius * radius * 3.14159 ,python会自动的将radius看成...

    Python学习笔记整理3之输入输出、python eval函数

    python中的变量声明不需要像C++、Java那样指定变量数据类型(int、float等),因为python会自动地根据赋给变量的值确定其类型。如 radius = 20,area = radius * radius * 3.14159 ,python会自动的将radius看成...

    c++基础教程,简洁扼要

    适合新手的教程,我自己也在学,以下是部分学习笔记 69 函数指针 70 动态内存分配 Dynamic memory pointer = new type pointer = new type [elements] 第一个表达式用来给一个单元素的数据类型分配内存。第二个...

    java基础笔记

    java初学者的学习笔记,很详细。 目录 0 第一节 7月15日 2 一、 IT行业相关介绍 2 二、C、C++和Java语言的比较 2 三、 JDK基础介绍 2 四、 面向对象与面向过程的比较 2 五、 Java相关介绍 2 六、 Path和Classpath...

    Java学习笔记之深入理解引用

    引言:Java中数据传递的方式,除了基本数据类型是按照值传递,其它类型全部是按照引用传递,这和C++有很大区别,但是很多网上文章都解释的不清楚,甚至是错误的,在查阅资料之后,下面整理出一个比较容易理解的版本...

    Python学习笔记(二)基础语法

    (开发环境依然是Python2.7,简单使用)一,基本知识1,不需要预先定义数据类型(此说法值得商榷,姑且这么说吧),这是与其他语言的最大不同(如C,C++,C#,Delphi等) 复制代码 代码如下: &gt;&gt;&gt; x=12 &gt;&gt;&gt; y=13 &gt;&gt;&gt;...

    leetcode合法表达式-CPP_Practice:本仓库是面向C/C++技术方向的基础知识总结,包括语言、程序库、数据结构、算法、系统、网

    技术方向的基础知识总结,包括语言、程序库、数据结构、算法、系统、网络、链接装载库等知识总结记录...... :folded_hands: 仓库内容如有错误或改进欢迎 issue 或 pr,建议或讨论可在 提出。由于本人水平有限,仓库...

    asp.net知识库

    VS2005 ASP.NET本地化学习笔记&感受 在自定义Server Control中捆绑JS文件 Step by Step 深度解析Asp.Net2.0中的Callback机制 使用 Web 标准生成 ASP.NET 2.0 Web 站点 ASP.NET 2.0基于SQLSERVER 2005的aspnetdb.mdf...

    学会使用SafeArray 之 Delphi篇--源码

    在CSDN技术中心有一篇关于C++的使用,说的比较详细。鉴于手中有田师傅写的代码,特拿来一部分对照自己学习的,翻译为Delphi版本。留作笔记,日后翻阅。 ========================================================...

Global site tag (gtag.js) - Google Analytics