当前位置: 首页 > news >正文

与C语言不同的基础语法

一、不同

1.可同时定义并初始化多个变量
2.有string字符串类型
3.可在循环中定义变量
#include<iostream>
using namespace std;
int main()
{int a=1,b=2;//可同时定义并初始化多个变量string name;//字符串类型 char array[3]; for(int i=1;i<=3;i++)//for中定义i变量 {cin>>array[i];cout<<"array:"<<array[i]<<","<<endl; }cin>>name;cout<<"name:"<<name<<"\n"<<endl; cout<<"a:"<<a<<"\n"<<"b:"<<b<<endl;
}
4.动态内存分配关键字不同
#include<iostream>
#include<cstring>//包含字符串处理函数 
using namespace std;
int main()
{int *p=new int;//为指针动态分配一个int型空间;相当于C语言中:int *p=(int *)malloc(sizeof(int)); char *q=new char[3];//为指针动态分配一个连续空间;相当于C语言中:char *p=(char*)calloc(3,sizeof(char)); strcpy(q,"堆内存的动态分配");//将字段复制到指针q指向的内存空间中 *p=100;cout<<"指针p的值:"<<*p<<endl;cout<<q<<endl;delete []q;// 释放一个连续空间[]+释放变量名;相当于C语言中:for(i=0;i<3;i++) free(q[i]); delete p;//释放p所指向的内存空间,相当于C语言中:free(p); } 
5.可以定义函数的结构体类型
#include<iostream>
using namespace std;
struct function{void sayHi(char *name){cout<<"hi,"<<name<<endl;}void sayBye(char *name){cout<<"bye,"<<name<<endl;}
};
int main()
{struct function fun;fun.sayHi("c++");//调用结构体中方法fun.sayBye("c++");
}

二、拓展

特殊运算符的应用
#include<iostream>
using namespace std;
int main()
{int a=10,b=12,flag=~a;cout<<"~a:"<<flag<<endl;//按位取反:1111 0101 —> 负数:符号位不变,其余位取反+1 —> 得原码:-000 1011即-11 flag=a&b;cout<<"a&b:"<<flag<<endl;//按位与:同1为1,否则为0 flag=a|b;cout<<"a|b:"<<flag<<endl;//按位或:同0才0,否则为1 flag=a^b;cout<<"a^b:"<<flag<<endl;//异或运算:相异为1,相同为0 flag=a<<1;cout<<"a<<1:"<<flag<<endl;//a左移一位:0000 1010 —>0001 0100即 20flag=a>>1;cout<<"a>>1:"<<flag<<endl;// a右移一位:0000 1010 —>0000 0101即 5} 
http://www.lryc.cn/news/193431.html

相关文章:

  • Python文件读写实战:处理日常任务的终极工具!
  • 思维模型 秩序
  • pyqt5移动鼠标时显示鼠标坐标
  • 分享一下开发回收废品小程序的步骤
  • 568A和568B两种线序
  • kafka广播消费组停机后未删除优化
  • 深度学习自学笔记十三:unet网络详解和环境配置
  • 如何给苹果ipa和安卓apk应用APP包体修改手机屏幕上logo图标iocn?
  • 复旦MBA魏文童:构建完备管理知识体系,助力企业数字化发展
  • 【算能】在Docker中调用PCIe卡
  • 【MySQL】表的查询与连接
  • AtCoder Beginner Contest 324(F)
  • LuatOS-SOC接口文档(air780E)-- i2s - 数字音频
  • 瑞芯微RK3568核心板在边缘服务器产品中的应用-迅为电子
  • pg ash自制版 pg_active_session_history
  • Elasticsearch系列组件:Kibana无缝集成的数据可视化和探索平台
  • phpcms_v9模板制作及二次开发常用代码
  • 自然语言处理(NLP)-概述
  • Python开发者的宝典:CSV和JSON数据处理技巧大公开!
  • Unity中Commpont类获取子物体的示例
  • 【Vue面试题二十一】、Vue中的过滤器了解吗?过滤器的应用场景有哪些?
  • Unity 3D基础——缓动效果
  • 高校教务系统登录页面JS分析——南京邮电大学
  • css实现排行榜样式(vue组件)
  • I2VGen-XL高清图像生成视频大模型
  • Angular知识点系列(1)-每天10个小知识
  • 【从0开发】百度BML全功能AI开发平台【实操:以部署情感分析模型为例】
  • 源码解析FlinkKafkaConsumer支持punctuated水位线发送
  • vue3学习(五)--- 父子组件传值
  • 寻找AI时代的关键拼图,从美国橡树岭国家实验室读懂AI存力信标