C++转换为C需要注意的各项问题

文章属于原创内容,引用需注明出处!(尊重原创力量,人人做起)

一、写作背景

由于最近在忙着学习DSP进行工程实现,编写程序时发现了一个问题:C++和C语法经常会混淆。而DSP6678只能c编程,因此分不清 C++和C就会导致编译器报错。为了解决这个问题,我将自己编译时遇到的错误进行汇总,有一点可以肯定的是,这里汇总的问题不能完全包含C++和C的区别,所以日后遇到新的问题就会回来更新这个帖子。

二、不同点

1.创建一个新结构体变量
C:
在结构体变量类型前必须添加struct标识,且不能在定义结构体变量的时候就进行赋值

struct Dny_Data
{
	int data_len;
	double *data;
} data_out;

struct Dny_Data data_in;		
		data_in.data_len = ana_Num;		
		data_in.data = data_1;	

C++:
在结构体变量类型前可以不添加添加struct标识,且可以在定义结构体变量的时候就进行赋值

struct Dny_Data
{
	int data_len;
	double *data;
} data_out;

Dny_Data data_in = { ana_Num ,data_1  };

2.for循环
C:
在for循环中不能定义新变量

int ii = 0;
for ( ii = 0; ii < out_num; ii++)

C++:
在for循环中可以直接定义新变量

for ( int ii = 0; ii < out_num; ii++)

3.输入输出指令
C:
使用的是printf

printf("%f\n\r",data_out.data[ii]);	

C++:
使用std::cout

std::cout << data_out.data[ii] << "\t";

4.头文件
C:

#include <math.h>
#include <stdlib.h>
#include <stdio.h>

C++:

#include <cmath>
#include <cstring>
#include <iostream>

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值