Форум программистов, компьютерный форум CyberForum.ru

корректен ли код void f (struct x *this);? (объявление функции) - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Произвести замену всех отрицательных чисел на нули http://www.cyberforum.ru/cpp-beginners/thread375501.html
ПОмогите пожалуйста решить задачу в си Дан двухмерный массив размерностью 3х3.ПРоизвести замену всех отрицательных чисел на нули. Произвести вывод данного массива в виде матриц
C++ Пространство имен std Какой стиль лучше ? using std::cout; using std::endl; or using namespace std; http://www.cyberforum.ru/cpp-beginners/thread375497.html
C++ Помогите с Использование оператора цикла
Использование оператора цикла с параметром (for) для организации циклических вычислительных процессов Найти вектор Z = {z1,z2,...z10} , равный сумме двух векторов X = {x1,x2,..x10} и Y ={y1,y2,...,y10} по формуле Zi = Xi + Yi; i = 1,2,...10; Элементы вектора X заданы, организовать их ввод с клавиатуры. Значения компонент вектора Y вычисляются по формуле: Yi = 0.7 *...
Задача на строки.ПОмогите решить C++
Помогите пожалуйста решить задачу Дана строка.Вывести данную строку задом наперед
C++ bad скрипты в TWebBrowser http://www.cyberforum.ru/cpp-beginners/thread375485.html
всем привет! есть проблема: при открытии url в компоненте TWebBrowser начинают вылезать варнинги о работе javascript скриптов. суть: на форме ComboBox и WebBrowser. путем выбора радиостанции в выпадающем списке в браузер грузится тот или иной музыкальный канал. так вот — при загрузке страницы в WebBrowser начинают выскакивать предупреждения об ошибке в работе javascript. как-нибудь можно...
C++ Произвести замену всех отрицательных чисел на нули Дан двухмерный массив размерностью 3 х 3.Произвести замену всех отрицательных чисел на нули. ПРоизвести вывод данного массива в виде матриц. подробнее

Показать сообщение отдельно
Nameless One
Эксперт С++
 Аватар для Nameless One
5754 / 3403 / 255
Регистрация: 08.02.2010
Сообщений: 7,393
31.10.2011, 16:41     корректен ли код void f (struct x *this);? (объявление функции)
kravam, this - это всего лишь имя формального параметра функции. Вместо него можно было бы написать:
C
1
void f (struct x* xptr);
И да, я же сказал, компилируй С-компилятором (сохрани с расширением *.c, скорми исходник gcc) - видать, твоя сборка делает определение языка по расширению, а в С++ this - это зарезервированное ключевое слово, вот и возникает синтаксическая ошибка:
Код
[nameless@desktop c]$ cat main.c
#include <stdio.h>
#include <stdlib.h>

struct foo
{
    struct foo* next;
};

void bar(struct foo* this);

int main(void)
{
    exit(0);
}
[nameless@desktop c]$ make
gcc -Wall -g -ansi -pedantic -pedantic-errors   -c -o main.o main.c
gcc -o sample -lm main.o
[nameless@desktop c]$ ./sample 
[nameless@desktop c]$ gcc --version
gcc (GCC) 4.6.1 20110908 (Red Hat 4.6.1-9)
Copyright (C) 2011 Free Software Foundation, Inc.
Это свободно распространяемое программное обеспечение. Условия копирования
приведены в исходных текстах. Без гарантии каких-либо качеств, включая 
коммерческую ценность и применимость для каких-либо целей.

[nameless@desktop c]$
 
Текущее время: 00:06. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru