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 
#include 
#include 

C++:

#include 
#include 
#include 

你可能感兴趣的:(编程,c++,c语言,开发语言)