1.C++ 指针运算符(& 和 *)
|
|
当上面的代码被编译和执行时,它会产生下列结果:
2.无限循环
|
|
注意:您可以按 Ctrl + C 键终止一个无限循环。
3.C++ 随机数
在许多情况下,需要生成随机数。关于随机数生成器,有两个相关的函数。一个是 rand(),该函数只返回一个伪随机数。生成随机数之前必须先调用 srand() 函数。
下面是一个关于生成随机数的简单实例。实例中使用了 time() 函数来获取系统时间的秒数,通过调用 rand() 函数来生成随机数:
实例
|
|
|
|
4.关于“using namespace std”
对于一个存在着标准输入输出的C++控制台程序,一般会在#include
1. 关于namespace
C++引入了命名空间namespace主要解决了多个程序员在编写同一个项目中可能出现的函数等重名的现象。解决方法就是加上自己的命名空间。比如下面的例子:
|
|
运行结果为:
上例中的“ZhangSan::a”和“LiSi::a”分别表示了调用张三命名空间中的a变量和李四命名空间中的a变量。这样的好处显而易见,那就是虽然张三和李四这两个程序员都定义了一个变量a,但是并不会出现重名的危险。
5.#include<iostream>
和#include<iostream.h>
的区别
区别在于:如果用了isotream则一定要引入命名空间,即”using namespace std;
如果用了iostream.h,则不能引入命名空间,否则会引起编译错误,提示找不到命名空间.
例程如下:
情况一:
输出:
情况二:
输出:
情况三:
编译错误信息:
|
|
#include
using namespace std;
#include
/主要是对cin,cout之类的一些操纵运算子,比如setfill,setw,setbase,setprecision等等。它是I/O流控制头文/
using std::setw; / setw(n) 设域宽为n个字符 /
int main ()
{
int n[ 10 ]; // n 是一个包含 10 个整数的数组
// 初始化数组元素
for ( int i = 0; i < 10; i++ )
{
n[ i ] = i + 100; // 设置元素 i 为 i + 100
}
cout << “Element” << setw( 13 ) << “Value” << endl;
// 输出数组中每个元素的值
for ( int j = 0; j < 10; j++ )
{
cout << setw( 7 )<< j << setw( 13 ) << n[ j ] << endl;
}
return 0;
}
正在启动:/home/kuo/projects/test/build/test
Element Value
0 100
1 101
2 102
3 103
4 104
5 105
6 106
7 107
8 108
9 109
正常退出
#include
using namespace std;
int main ()
{
// 一个带有 5 行 2 列的数组
int a[5][2] = { {0,0}, {1,2}, {2,4}, {3,6},{4,8}};
// 输出数组中每个元素的值
for ( int i = 0; i < 5; i++ )
for ( int j = 0; j < 2; j++ )
{
cout << “a[“ << i << “][“ << j << “]: “;
cout << a[i][j]<< endl;
}
return 0;
}
6.2 C++ 指向数组的指针
|
|
输出:
6.3 C++ 传递数组给函数
C++ 不允许向函数传递一个完整的数组作为参数,但是,您可以通过指定不带索引的数组名来传递一个指向数组的指针。
|
|
输出:
6.4 C++ 从函数返回数组
C++ 不允许返回一个完整的数组作为函数的参数。但是,您可以通过指定不带索引的数组名来返回一个指向数组的指针。
如果您想要从函数返回一个一维数组,您必须声明一个返回指针的函数,如下:
|
|
另外,C++ 不支持在函数外返回局部变量的地址,除非定义局部变量为 static 变量。
现在,让我们来看下面的函数,它会生成 10 个随机数,并使用数组来返回它们,具体如下:
|
|
输出:
7.C++ 字符串
C++ 提供了以下两种类型的字符串表示形式:
C 风格字符串
C++ 引入的 string 类类型
7.1 C 风格字符串
C 风格的字符串起源于 C 语言,并在 C++ 中继续得到支持。字符串实际上是使用 null 字符 ‘\0’ 终止的一维字符数组。因此,一个以 null 结尾的字符串,包含了组成字符串的字符。
|
|
|
|
其他:
|—|—|—|
| - - - | : - - - : | - - - |
| 4 | strcmp(s1,s2); |如果 s1 和 s2 是相同的,则返回 0;如果 s1 < s2 则返回小于 0;如果 s1>s2 则返回大于 0。 |
| 5 | strchr(s1, ch); | 返回一个指针,指向字符串 s1 中字符 ch 的第一次出现的位置。 |
|6 | strstr(s1, s2); |返回一个指针,指向字符串 s1 中字符串 s2 的第一次出现的位置。|
7.2 C++ 中的 String 类
C++ 标准库提供了 string 类类型,支持上述所有的操作,另外还增加了其他更多的功能。我们将学习 C++ 标准库中的这个类,现在让我们先来看看下面这个实例:
|
|
|
|