Как записать данные в переменную, не имея указатель на неё? - C (СИ)
Формулировка задачи:
Столкнулся с такой проблемой. Сейчас изучаю c по книге K&R. Нашёл там пример применения библиотеки stdarg в создании упрощённой функции для вывода в стандартный поток. Теперь пытаюсь написать функцию для ввода, типо scanf, проблема в том, что я не понимаю, как записать данные в переменную, не имея указатель на неё.
Код выглядит приблизительно так:
int scf(char *s, ...)
{
va_list ap;
int k = 0;
char *p;
int c;
int *gerp;
va_start(ap,s);
for(p = s; *p; p++) {
if(*p == '%') {
switch(*++p) {
case 'd':
while((c = getchar()) != EOF && c != '\n') {
k = k*10 - '0' + c;
}
.......
.......
break;
}
}
}
va_end(ap);
}Решение задачи: «Как записать данные в переменную, не имея указатель на неё?»
textual
Листинг программы
gerp = k;