C和C++程序对比一例

C和C++程序对比一例

下面C 和C++程序完成相同的功能,输出一样。本文涉及到结构体(struct)数据类型。

C和C++的字符串

C字符串定义时可以利用“=”号进行初始化,但是不能利用“=”对C字符串进行赋值。对C字符串的操作需要通过“string.h”头文件中定义的字符串处理函数。如:

//字符串的初始化

char a[11] = "huanying";

//字符串的赋值

strcpy(a,"nihao")

在C++中则把字符串封装成了一种数据类型string,可以直接声明变量并进行赋值等字符串操作。

C和C++的输入输出

对标准设备(键盘和显示器)的输入输出,C语言用函数scanf和printf进行输入输出,C++语言采用流——输入用cin输出用cout。(注意,C++为了与C兼容,保留了用printf和scanf进行输出和输入的方法)

https://www.cnblogs.com/yangykaifa/p/6837294.html

C 文件名一般以 ".c" 作为扩展名,C++ 文件名一般以 ".cpp"  作为扩展名。

C程序

#include <stdio.h>
#include <string.h>
 
struct Books
{
   char title[50];
   int id;
};
 
int main( )
{
   struct Books Book1;        // 声明 Book1,类型为 Books
   struct Books Book2;        // 声明 Book2,类型为 Books 
 
   strcpy(Book1.title, "C Programming");
   Book1.id = 10001;
 
   Book2 = Book1;
 
   printf("Book 1 title:%s, Book 1 id:%d\n", Book1.title, Book1.id); 
   printf("Book 2 title:%s, Book 2 id:%d\n", Book2.title, Book2.id);
  
   Book1.id = 20002;
   
   printf("Book 1 title:%s, Book 1 id:%d\n", Book1.title, Book1.id); 
   printf("Book 2 title:%s, Book 2 id:%d\n", Book2.title, Book2.id);
   
   return 0;
}

C++程序

#include <iostream>
using namespace std;
 
struct Books
{
   string title;
   int id;
};
 
int main( )
{
   struct Books Book1;        // 声明 Book1,类型为 Books
   struct Books Book2;        // 声明 Book2,类型为 Books 
 
   Book1.title =  "C Programming";
   Book1.id = 10001;
 
   Book2 = Book1;
 
   cout<< "Book 1 title:" << Book1.title <<  "  id:" << Book1.id <<endl; 
   cout<< "Book 2 title:" << Book2.title <<  "  id:" << Book1.id <<endl; 
  
   Book1.id = 20002;
   
   cout<< "Book 1 title:" << Book1.title <<  "  id:" << Book1.id <<endl; 
   cout<< "Book 2 title:" << Book2.title <<  "  id:" << Book1.id <<endl; 
   
   return 0;
}

输出如下:

Book 1 title:C Programming  id:10001

Book 2 title:C Programming  id:10001

Book 1 title:C Programming  id:20002

Book 2 title:C Programming  id:20002

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
原名《Turbo C/C++ for Windows 集成实验与学习环境》,现在已全面支持最新操作系统VISTA,它是从事一线教学的大学教师根据C/C++ 初学者的特点,量身定制的一个简单易用的 C/C++程序设计学习与实验软件(支持TC2/TC3、GCC、VC6四种编译器,没有使用日期限制)。与软件配套的《 C/C++程序设计教程(配有同步实验、流程控制语句动画演示、提供教程中所有程序实例、实验、作业中的源代码(全部用VC6编译器调试通过))》融入了作者多年的教学和学习经验、编程建议、编程感悟,新增读书笔记功能有利用户 记录教程中的重点、难点、学习心得体会,针对用户学习教程中遇到的问题开通了疑难问题解答论坛等,同时,为了便于C语言学习,加入C语言学习指导、入门程序实例、典型源程序、典型的函数算法,课程设计指导、课程设计源程序、 Visual C++6.0中英文编译错误信息同步显示功能(并配有60多种同步的语法错误程序实例、修改方法等)、 Turbo C2.0 中英文编译错误信息同步显示功能、Turbo C++3.0常见编译错误信息、C语言专业词汇的中英文对照、二级 C 语言的真题笔试试卷及答案与分析和上机模拟试题和详尽的答案与分析等大量的学习资源。另外 “编程日记” 功能可以让你记录你的 C 语言学习历程, “资料管理” 功能让你大量的下载资料不再难找。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

学习&实践爱好者

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值