Как я могу передать структуру массива функции без указателя ?
Я пытаюсь передать структуру массива функции без указателя.
Я пытаюсь передать массив[], чтобы он напечатал следующее значение массива.
Приведенный ниже код имеет массив List[5] = {1,2,3,4}, где первый int в массиве
будет обработан в
struct Count numbers()Я включил инкремент i, поэтому printCode() будет печатать целые числа numbers.intOne[1] & numbers.intTwo[1], numbers.intOne[2] & numbers.intTwo[2] и т.д...
Я хочу, чтобы программа запускала массив один за другим, например, 1 будет добавлен на 4 и добавлен на 6, что приведет к печати 57. И следующее значение будет равно 2, что приведет к 6 и 8. Но он будет принимать только одно и то же значение из структуры и продолжает печатать 575757.
Как я могу заставить функцию перейти к следующему значению массива (и напечатать 58), и возможно ли это без массива?
Что я уже пробовал:
#include <stdio.h> struct Count { //My struct int intOne; int intTwo; }; struct Count numbers() { struct Count numbers; int List[5] = { 1, 2, 3, 4 }; //The array int i; for (i = 0; i < 10; i++) { numbers.intOne = List[i] + 4; numbers.intTwo = List[i] + 6; return numbers; } }; void printCode(struct Count numbers) { int i; for (i = 0; i < 2; i++) { printf("%i%i", numbers.intOne, numbers.intTwo); //This thing only prints 575757 } } int main() { int i = 0; for (i = 0; i < 10; i++) { numbers(); printCode(numbers()); getchar(); } }
Aydin Homay
Насколько я знаю относительно кода, который вы предоставили выше, вы передаете счетчик структуры в printCode по значению, а не по ссылке, не могли бы вы более четко сформулировать свой вопрос, Чего вы пытаетесь достичь?
Member 14060076
@Aydin Homay да, я пытаюсь распечатать код по значению. Я хочу, чтобы программа запускала массив один за другим, например, 1 будет добавлен на 4 и добавлен на 6, что приведет к печати 57. И следующее значение будет равно 2, что приведет к 6 и 8. Но он будет принимать только одно и то же значение из структуры и продолжает печатать 57... И я хочу, чтобы это был 5768etc. Я надеюсь, что это достаточно ясно