首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >C++ 基础扫盲(1)

C++ 基础扫盲(1)

作者头像
zls365
发布2020-08-19 14:09:24
7070
发布2020-08-19 14:09:24
举报
文章被收录于专栏:CSharp编程大全CSharp编程大全

1.C++中cout的用法: C++编程语言互换流中的标准输抄出流,需要知iostream.h支持。读为 "c out"。 这是输出,格式为cout<<n;如果你想隔行输入的话,用cout<<n<<endl;如果你想空格的话为cout<<n1<<" "<<n2; 要输出变量话需要提前定义,不是变量的话,要加引号,如cout<<"Hello,World!"<<endl;这些是常用的。 本实例使用了 endl,这将在每一行后插入一个换行符,<< 运算符用于向屏幕传多个值。 2.定义常量 在 C++ 中,有两种简单的定义常量的方式: 使用 #define 预处理器。 使用 const 关键字。 例如: #define LENGTH 10 #define WIDTH 5 #define NEWLINE '\n' 您可以使用 const 前缀声明指定类型的常量,如下所示: const int LENGTH = 10; 请注意,把常量定义为大写字母形式,是一个很好的编程实践。 3.C++ 修饰符类型 C++ 允许使用速记符号来声明无符号短整数或无符号长整数。您可以不写 int,只写单词 unsigned、short 或 unsigned、long,int 是隐含的。例如,下面的两个语句都声明了无符号整型变量。 unsigned x; unsigned int y; 4.auto 存储类 uto 关键字用于两种情况:声明变量时根据初始化表达式自动推断该变量的类型、声明函数时函数返回值的占位符。 5.std是什么? std:: 是个名称空间标示符,C++标准库中的函数或者对象都是在命名空间std中定义的, 所以我们要使用标准函数库中的函数或对象都要使用std来限定。 对象count是标准函数库所提供的对象,而标准库在名字空间中被指定为std,所以在使用cout的时候要加上std::。 这样编译器就会明白我们调用的cout是名字空间std中的cout。 当然还有一种方法: 在main函数的上面使用了两行语句: using std::cout; using std::endl; 那么cout和endl前面就不需要std:: 比如这样改写引例:

#include<iostream>
using std::cout;
using std::endl;
int main()
{
    cout<<"我喜欢C++";//输出一句话
    cout<<endl;//换行
    return 0;
}

其实还有种更简便的方法,就是直接使用using namespace std来代替using std::cout和using std::endl。 using namespace std 告诉编辑器我们将要使用空间std中的函数或者对象。 所以cout和endl前面不用注明它们是std这个名字空间中的cout和endl。

#include<iostream>
using namespace std;
int main()
{
    cout<<"我喜欢C++";//输出一句话
    cout<<endl;//换行
    return 0;
}

6.C++中的::的作用: 1)作用域限定符,当在类体中直接定义函数时,不需要在函数名字的前面加上类名,但是在类体外实现函数定义的时候, 必须加上类名并且加上作用域限定符。Student::Display(); 7.无限循环 当条件表达式不存在时,它被假设为真。您也可以设置一个初始值和增量表达式,但是一般情况下,C++ 程序员偏向于使用 for(;;) 结构来表示一个无限循环。 注意:您可以按 Ctrl + C 键终止一个无限循环。 for( ; ; ) { printf("This loop will run forever.\n"); } 7.函数声明: 函数声明会告诉编译器函数名称及如何调用函数。函数的实际主体可以单独定义。 针对上面定义的函数 max(),以下是函数声明: int max(int num1, int num2); 在函数声明中,参数的名称并不重要,只有参数的类型是必需的,因此下面也是有效的声明: int max(int, int); 当您在一个源文件中定义函数且在另一个文件中调用函数时,函数声明是必需的。在这种情况下,您应该在调用函数的文件顶部声明函数。 8.C++ 数学运算 C++ 内置了丰富的数学函数,可对各种数字进行运算。下表列出了 C++ 中一些有用的内置的数学函数。 为了利用这些函数,您需要引用数学头文件 <cmath>。 序号 函数 & 描述 ----------------------------------------- double cos(double); 该函数返回弧度角(double 型)的余弦。 ----------------------------------------- double sin(double); 该函数返回弧度角(double 型)的正弦。 ----------------------------------------- double tan(double); 该函数返回弧度角(double 型)的正切。 ----------------------------------------- double log(double); 该函数返回参数的自然对数。 ----------------------------------------- double pow(double, double); 假设第一个参数为 x,第二个参数为 y,则该函数返回 x 的 y 次方。 ----------------------------------------- double hypot(double, double); 该函数返回两个参数的平方总和的平方根,也就是说,参数为一个直角三角形的两个直角边,函数会返回斜边的长度。 ----------------------------------------- double sqrt(double); 该函数返回参数的平方根。 ----------------------------------------- int abs(int); 该函数返回整数的绝对值。 ----------------------------------------- double fabs(double); 该函数返回任意一个浮点数的绝对值。 ----------------------------------------- double floor(double); 该函数返回一个小于或等于传入参数的最大整数。 9.C++ 随机数 在许多情况下,需要生成随机数。关于随机数生成器,有两个相关的函数。一个是 rand(),该函数只返回一个伪随机数。生成随机数之前必须先调用 srand() 函数。 下面是一个关于生成随机数的简单实例。实例中使用了 time() 函数来获取系统时间的秒数,通过调用 rand() 函数来生成随机数:

#include <iostream>
#include <ctime>
#include <cstdlib>
 
using namespace std;
 
int main ()
{
   int i,j;
 
   // 设置种子
   srand( (unsigned)time( NULL ) );
 
   /* 生成 10 个随机数 */
   for( i = 0; i < 10; i++ )
   {
      // 生成实际的随机数
      j= rand();
      cout <<"随机数:" << j << endl;
   }
 
   return 0;
}

10.C++ 字符串 C++ 中有大量的函数用来操作以 null 结尾的字符串: ----------------------------------------- strcpy(s1, s2); 复制字符串 s2 到字符串 s1。 ----------------------------------------- strcat(s1, s2); 连接字符串 s2 到字符串 s1 的末尾。 ----------------------------------------- strlen(s1); 返回字符串 s1 的长度。 ----------------------------------------- strcmp(s1, s2); 如果 s1 和 s2 是相同的,则返回 0;如果 s1<s2 则返回值小于 0;如果 s1>s2 则返回值大于 0。 ----------------------------------------- strchr(s1, ch); 返回一个指针,指向字符串 s1 中字符 ch 的第一次出现的位置。 ----------------------------------------- strstr(s1, s2); 返回一个指针,指向字符串 s1 中字符串 s2 的第一次出现的位置。 11.C++ 中使用指针 学习 C++ 的指针既简单又有趣。通过指针,可以简化一些 C++ 编程任务的执行,还有一些任务,如动态内存分配,没有指针是无法执行的。所以,想要成为一名优秀的 C++ 程序员,学习指针是很有必要的。 正如您所知道的,每一个变量都有一个内存位置,每一个内存位置都定义了可使用连字号(&)运算符访问的地址,它表示了在内存中的一个地址。请看下面的实例,它将输出定义的变量地址: 实例

#include <iostream>
 
using namespace std;
 
int main ()
{
   int  var1;
   char var2[10];
 
   cout << "var1 变量的地址:";
   cout << &var1 << endl;
 
   cout << "var2 变量的地址:";
   cout << &var2 << endl;
 
   return 0;
}

当上面的代码被编译和执行时,它会产生下列结果: var1 变量的地址:0xbfebd5c0 var2 变量的地址:0xbfebd5b6 通过上面的实例,我们了解了什么是内存地址以及如何访问它。接下来让我们看看什么是指针。 什么是指针? 指针是一个变量,其值为另一个变量的地址,即,内存位置的直接地址。就像其他变量或常量一样,您必须在使用指针存储其他变量地址之前,对其进行声明。指针变量声明的一般形式为: type *var-name; 在这里,type 是指针的基类型,它必须是一个有效的 C++ 数据类型,var-name 是指针变量的名称。用来声明指针的星号 * 与乘法中使用的星号是相同的。但是,在这个语句中,星号是用来指定一个变量是指针。以下是有效的指针声明: int *ip; /* 一个整型的指针 */ double *dp; /* 一个 double 型的指针 */ float *fp; /* 一个浮点型的指针 */ char *ch; /* 一个字符型的指针 */ 所有指针的值的实际数据类型,不管是整型、浮点型、字符型,还是其他的数据类型,都是一样的,都是一个代表内存地址的长的十六进制数。不同数据类型的指针之间唯一的不同是,指针所指向的变量或常量的数据类型不同。 C++ 中使用指针 使用指针时会频繁进行以下几个操作:定义一个指针变量、把变量地址赋值给指针、访问指针变量中可用地址的值。这些是通过使用一元运算符 * 来返回位于操作数所指定地址的变量的值。下面的实例涉及到了这些操作: 实例

#include <iostream>
 
using namespace std;
 
int main ()
{
   int  var = 20;   // 实际变量的声明
   int  *ip;        // 指针变量的声明
 
   ip = &var;       // 在指针变量中存储 var 的地址
 
   cout << "Value of var variable: ";
   cout << var << endl;
 
   // 输出在指针变量中存储的地址
   cout << "Address stored in ip variable: ";
   cout << ip << endl;
 
   // 访问指针中地址的值
   cout << "Value of *ip variable: ";
   cout << *ip << endl;
 
   return 0;
}

当上面的代码被编译和执行时,它会产生下列结果:

Value of var variable: 20
Address stored in ip variable: 0xbfc601ac
Value of *ip variable: 20
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-05-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 CSharp编程大全 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档