Форум программистов, компьютерный форум, киберфорум
Наши страницы
C для начинающих
Войти
Регистрация
Восстановить пароль
Другие темы раздела
C (СИ) Не работает сортировка Qsort http://www.cyberforum.ru/c-beginners/thread948438.html
начал разбираться си и столкнулся с проблемой, не подскажите почему не работает? //program qsort #include<stdio.h> #include<stdlib.h> int swap (int *array,int i, int j) { int a; ...
Печатается два раза одно и тоже (динамические списки) C (СИ)
есть программа #include <stdio.h> #include <locale.h> #include <conio.h> #include <windows.h> struct Worker
C (СИ) Как вывести динамический список?
как вывести динамический список? void printWorkerList(Worker* List) { while(List!=NULL) { printf("%s",List->dolshnost); printf("%s",List->nameofWorker); ...
C (СИ) Вычислить значение выражения Даны действительные числа a0, ..., a6. Получить для x = 1, 3, 4 значения p(x + 1) - p(x), где p(y) = a6y6 + a5y5 + ... + a0. Помогите пожалуйста, у меня не получается. http://www.cyberforum.ru/c-beginners/thread948037.html
C (СИ) Как упростить добавление к строке http://www.cyberforum.ru/c-beginners/thread947997.html
Есть такое: void GetHideList( PWCHAR _path ) { WCHAR path; wcscpy( path, _path ); wcscat( path, L"\\hide.hide "); ... Как вы поняли, мне надо добавить к строке...
C (СИ) I/O строки
Здравствуйте, господа, #include <stdio.h> int main() { char a; scanf_s("%s",a); printf("%s\n",a); return 0; } Пытаюсь разобраться с вводом/выводом строк, приведенный выше код...
C (СИ) Поменять местами последнюю и первую строку файла
Задача - поменять местами последнюю и первую строку, вот начало кода: #include <stdio.h> #include <conio.h> #include <string.h> struct book {int n; char autor ; char name ;char date ;} B; void...
C (СИ) Определить количество чисел в последовательности, которые больше предыдущего числа определить количество чисел в последовательности которые больше предыдущего числа http://www.cyberforum.ru/c-beginners/thread947823.html
C (СИ) Введите с клавиатуры число х и определите порядковый номер последнего числа, равного х http://www.cyberforum.ru/c-beginners/thread947821.html
Введите с клавиатуры число х и определите порядковый номер последнего числа, равного х
C (СИ) Все положительные элементы массива заменить на значение "1", отрицательные на "-1" Дана последовательность чисел a (i=1, 2, …, n). Все положительные элементы заменить на значение "1", отрицательные на "-1". написал до: #include <stdio.h> int main() { int b,i,N,res; int a; ... http://www.cyberforum.ru/c-beginners/thread947773.html
lowercase
212 / 201 / 85
Регистрация: 09.05.2012
Сообщений: 494
05.09.2013, 12:10 0

Функция как член структуры

05.09.2013, 12:10. Просмотров 9891. Ответов 2
Метки (Все метки)

Ответ

Цитата Сообщение от qwestcl Посмотреть сообщение
... которая считает значения переменных, входящих в эту структуру
это невозможно, в том виде в котором оно есть в с++. в си нельзя определить функцию как член структуры которая будет работать в контексте самой структуры(т.е. иметь неподсредственный доступ к полям без явного указания имени структуры).

Добавлено через 5 минут
а так вообще выглядит дико, вызывать функцию из структуры и передавать эту же структуру как праметр. обычный вызов функции вне структуры будет смотрется гараздо лучше. ну, а в общем случае то, что вы хотите делается так(например):

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <stdio.h>
 
struct point {
    int x, y;
    void (*println)(struct point*);
};
 
void println_point(struct point* p){
    printf("[%d, %d]\n", p->x, p->y);
}
 
int main() {
    struct point p1 = { 10, 20, &println_point };
    p1.println(&p1);
 
    return 0;
}


Вернуться к обсуждению:
Функция как член структуры
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.09.2013, 12:10
Готовые ответы и решения:

Функция как член структуры
Здравствуйте! Столкнулся с проблемой: не могу объявить функцию как член структуры. Компилятор...

Функция удаления элемента структуры
Здравствуйте, не могли бы подсказать, где я ошибся?( функция никак не хочет удалять элемент...

Функция удаления элемента структуры
Здравствуйте, в этой функции может удаляться любой элемент, кроме первого, как это можно исправить,...

Функция удаления структуры из бинарного файла
Привет всем, кто смотрит эту тему :) Если не сложно, если интересно, помогите разобраться в...

Функция со сменным количеством параметров для структуры
Здравствуйте! Есть задание написать функцию со сменным количеством параметром. Этими параметрами...

2
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.