Хочу перейти к другому значению через добавление константы к указателю, но выводит не то значение, что нужно.
int min(int m, ...) {
int *ptr = &m;
int min = *(ptr + 1);
if (*ptr == 0)
return 0;
for(; *ptr; ptr++) {
if (*ptr < min)
min = *ptr;
}
return min;
}
*ptr
работает нормально, но уже *(ptr + 1)
не выдаёт то, что нужно.
Если всё-таки интересует, почему не получалось с указателями, возможно, это подскажет почему.
#include <stdio.h>
#define LIMIT 100
void searchoffset(int findwhat, ...)
{
int *args = &findwhat;
printf("first element: %p : %d\n\n", args, *args);
args++;
int counter = 0;
do
{
printf("offset: %d [%p : %d]\n", counter, args, *args);
args++;
counter++;
} while (*args != findwhat);
printf("offset: %d [%p : %d]\n", counter, args, *args);
}
int main()
{
searchoffset(135, 2, 11, 144, 25, 7, 135);
return 0;
}
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Какие существуют виды рекламных бордов и как выбрать подходящий?
Допустим, у меня есть класс, который я создаю в самом начале программы, в его конструкторе я выделяю память под какие-то другие объекты с помощью...
Так смог получить только первые 128 битКак при каждом цикле получать следующие 128 бит? Как определить конец файла?
Как в travisyml написать чтобы выполнялся code style только у измененных файлов? Язык C++