На данный вопрос уже ответили:
Я программирую на языке C примерно с октября. Сейчас я приступил к изучению языка C++. Я нашёл в интернете хорошую статью на тему "Основные отличия языка программирования C++ от языка C". Мой вопрос заключается в том, если я скомпилирую исходный код, написанный на языке C, компилятором gcc
(C++), меняя при этом в коде только явное приведение некоторых типов (например, так:
char *k = malloc(x * sizeof(char)); //код на C
char *k = (char *) malloc(x * sizeof(char)); //код на C++
и не меняя практически больше ничего (в том числе не меняя библиотеку стандартного ввода и вывода stdio.h
на iostream
), будет ли данный код успешно выполняться? Или есть какие-то вещи, которые строго должны быть написаны на языке C++ по-другому в отличие от C? Насколько я знаю, язык C++ имеет строгий синтаксис. К примеру, я в статье прочитал, что в C++ немного по-другому объявляются указатели, так же используется какая-то функция vector
вместо malloc
/ realloc
/ calloc
, и так далее. Если я не буду этого учитывать и всё-равно буду пользоваться функцией malloc
, например, то будет ли такая программа, скомпилированная на языке С++ успешно работать?
Возможно, мой вопрос некорректный и слегка глуп, нужно срочно разобраться именно с языком программирования C++ на основе знаний языка C для выполнения некоторой задачи в ближайшее время.
Вместо malloc/free из C в C++ используются new/new[]/delete/delete[]. Поэтому просто так указанный в вопросе код с malloc C++ компилятором компилироваться не будет, нужно подключить заголовочный файл cstdlib. Но работать программа должна благополучно, если скомпилируется. C++ обратно совместим с C в основном.
В принципе узнать это можно было просто запустив g++ -o main main.cpp
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Помогите закончить программу пожалуйстаНеобходимо создать базовый класс Array с виртуальными методами сложения и поэлементной обработки...