当前位置:首页>编程日记>正文

C++基本语法( Visual Studio 2015 )【个人 见解】

本站寻求有缘人接手,详细了解请联系站长QQ1493399855

对于C++这门语言,对于初学者的小编而言,是门很强大且有发展空间的语言。它囊括C语言,可以说是全部的功能语法,也可以说是很有独特性的语言之一。
用强大已不足以形容,它能干的事情太多,可以广泛用于开发软件、游戏编程...
它跟C语言的语法大相径庭,或许有人会问到底先学C语言好,还是C++语言好呢?
作为过来者的小编,这样认为的:
想从事C++语言发展的你,个人建议最好先把C语言学会,不需要研究的多么深彻,只要能做到连贯使用即可。因为再去学习C++语言时,你就会发觉它们的相似之处很多,可以这样说学会C语言,C++语言已经学会了一半。

  1. C语言的基本语法:
    #define _CRT_SECURE_NO_WARNINGS          //加上这句的原因:“scanf”:这个函数或变量可能不安全。考虑使用scanf_s。要禁用弃用,请使用_CRT_SECURE_NO_WARNINGS。
    #include <stdio.h>
    int main ()
    {
    int number = 0;
    scanf("%d",&number);
    printf("你输入的数字是:%d
    ",number);
    system("pause");
    return 0;
    }
  2. C++语言的基本语法:
    
    #include <iostream>
    using namespace std;

int main()
{
int number = 0;
cin >> number;
cout << "你输入的数字是:" << number << endl;
system("pause");
return 0;
}

两种语言的表达方式不同,但是运行后的结果相同。
![](https://s1.51cto.com/images/blog/201903/30/2b05c536137df4e5dfa3e648a26b5912.jpg?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
相对于C语言的基本数据类型,C++中用法不变,这里着重讲:bool和string数据类型。
true=1(真)
false=0(假)
bool:
//声明定义
bool stag1=true;
bool stag2=false;
string这个数据类型比较特殊,它有一个专属的头文件,也可以说是一套字符串类型函数的集合。
string:

#include <iostream>
#include <cstring>
using namespace std;

int main()
{
string srcstr = "visiousdragon";
cout<<srcstr.c_str()<<endl;
system("pause");
return 0;
}

当我们在用到存储字符串的变量声明时,尽量还是使用char类型为主。
下面我们看看几个经常用到的字符串函数例子:
1.strcpy()

#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
#include <cstring>
using namespace std;

int main()
{
char destStr[] = { 0 };
char sourceStr[] = "visiousdragon";
strcpy(destStr, sourceStr);
cout << destStr << endl;
system("pause");
return 0;
}

打印的结果为:visiousdragon,destStr作为一串不知多少位的空字符串变量,变成有数据了,不难看出strcpy()的作用是拷贝
2.strcat()

#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
#include <cstring>
using namespace std;

int main()
{
char destStr[] = "visious";
char sourceStr[] = "dragon";
strcat(destStr, sourceStr);
cout << destStr << endl;
system("pause");
return 0;
}

打印的结果为:visiousdragon,不难看出strcat()函数的作用是将dragon连接在visious后面。
3.strcmp()

#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
#include <cstring>
using namespace std;

int main()
{
int number = 0;

char destStr[] = "visiousdragon";
char sourceStr[] = "visiousdragon";if (strcmp(destStr,sourceStr) == 0)
{cout << "destStr相等于sourceStr" << endl;number = 0;
}
else if(strcmp(destStr, sourceStr) > 0)
{cout << "destStr大于sourceStr" << endl;number = 1;
}
else if(strcmp("visious", sourceStr) < 0)
{cout << "destStr小于sourceStr" << endl;number = -1;
}
system("pause");
return 0;

}

打印的结果为:destStr相等于sourceStr,不难总结出以下三个设定:
destStr=sourceStr,返回=0
destStr>sourceStr,返回>0
destStr<sourceStr,返回<0
4.strlen()

#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
#include <cstring>
using namespace std;

int main()
{
int number = 0;
char destStr[] = "visiousdragon";
number = strlen(destStr);
cout << "destStr字符串字符个数为:" << number << endl;
system("pause");
return 0;
}


打印的结果为:13,细数下visiousdragon刚好为13位,由此可见,strlen()函数的作用是计算字符串字符个数。
当然还有一些其他的函数,有兴趣的朋友,可以查找下,这里就不做多介绍了,学习的过程本来就是如此,不懂的就是查找,询问,没有捷径可走。

http://www.coolblog.cn/news/2cb630ea72b6f628.html

相关文章:

  • asp多表查询并显示_SpringBoot系列(五):SpringBoot整合Mybatis实现多表关联查询
  • s7day2学习记录
  • 【求锤得锤的故事】Redis锁从面试连环炮聊到神仙打架。
  • 矿Spring入门Demo
  • 拼音怎么写_老师:不会写的字用圈代替,看到孩子试卷,网友:人才
  • Linux 实时流量监测(iptraf中文图解)
  • Win10 + Python + GPU版MXNet + VS2015 + RTools + R配置
  • 美颜
  • shell访问php文件夹,Shell获取某目录下所有文件夹的名称
  • 如何优雅的实现 Spring Boot 接口参数加密解密?
  • LeCun亲授的深度学习入门课:从飞行器的发明到卷积神经网络
  • 支撑微博千亿调用的轻量级RPC框架:Motan
  • Mac原生Terminal快速登录ssh
  • 法拉利虚拟学院2010 服务器,法拉利虚拟学院2010
  • java受保护的数据与_Javascript类定义语法,私有成员、受保护成员、静态成员等介绍...
  • mysql commit 机制_1024MySQL事物提交机制
  • 2019-9
  • jquery 使用小技巧
  • 科学计算工具NumPy(3):ndarray的元素处理
  • vscode pylint 错误_将实际未错误的py库添加到pylint白名单
  • linux批量创建用户和密码
  • 工程师在工作电脑存 64G 不雅文件,被公司开除后索赔 41 万,结果…
  • js常用阻止冒泡事件
  • newinsets用法java_Java XYPlot.setInsets方法代碼示例
  • 气泡图在开源监控工具中的应用效果
  • 各类型土地利用图例_划重点!国土空间总体规划——土地利用
  • php 启动服务器监听
  • dubbo简单示例
  • Ubuntu13.10:[3]如何开启SSH SERVER服务
  • [iptables]Redhat 7.2下使用iptables实现NAT
  • 【设计模式】 模式PK:策略模式VS状态模式
  • CSS小技巧——CSS滚动条美化
  • JS实现-页面数据无限加载
  • 最新DOS大全
  • Django View(视图系统)
  • 阿里巴巴分布式服务框架 Dubbo
  • 阿里大鱼.net core 发送短信
  • Sorenson Capital:值得投资的 5 种 AI 技术
  • 程序员入错行怎么办?
  • 两张超级大表join优化
  • Arm芯片的新革命在缓缓上演
  • 第九天函数
  • Linux软件安装-----apache安装
  • HDU 5988 最小费用流
  • 《看透springmvc源码分析与实践》读书笔记一
  • nagios自写插件—check_file
  • python3 错误 Max retries exceeded with url 解决方法
  • 正式开课!如何学习相机模型与标定?(单目+双目+鱼眼+深度相机)
  • 通过Spark进行ALS离线和Stream实时推荐
  • 行为模式之Template Method模式