надеюсь, что у вас все отлично!Вопросы и функции памяти
В настоящее время я пересматриваю экзамены и придумал пару вопросов на прошлой бумаге, в которой я застрял, и буду благодарен за любую помощь/объяснение, которое вы можете предоставить! :)
Вот вопросы;
1.) Функция power() должна реализовать функцию n* 2^p
(Выходной сигнал линии printf()
должен быть 5*(2^2) = 20
). Завершите тело функции power()
с помощью оператора сдвига. Почему разумно использовать оператор сдвига вместо доступной функции питания в math.h
?
#include <stdio.h>
int power(int n, int p) {
<< YOUR CODE GOES HERE >>
}
main() {
printf("%d*(2^%d) = %d\n",5,2,power(5,2));
}
2.) Память организована в областях, называемых Text, Data, Stack and Heap. В приведенной ниже программе определяются переменные a
, b
и c
. В какой области памяти хранится содержимое каждой переменной?
#include <stdio.h>
#include <stdlib.h>
int a = 5;
int func1(int x) {
int b=5;
}
main {
char * c;
c = (char*) malloc (a+1);
func1(a);
return 0;
}
У меня есть еще несколько вопросов, которые нужно задать, но увидят, как это происходит! Я никогда раньше не использовал stackoverflow, поэтому, пожалуйста, пройдите, если я сделал что-то неправильно!
Большое спасибо,
Dan
Кто-то еще сделал это за вас, но в будущем вы можете отформатировать сегменты кода, выделив их и нажав кнопку '{}'. – Michelle
Спасибо за головы Мишель, и спасибо mbratch за то, что он менял для меня! Я прошу прощения за то, что он был так сильно отформатирован в первом посте, но это был мой первый пост на этом сайте! :) – CBreeze
Нет проблем, если вы можете учиться. Кроме того, если вы ищете код (например, функцию 'power()'), вы должны попробовать сначала, а затем, если это не сработает, укажите свои попытки и результат, чтобы мы могли направлять вас вправо направление. – Michelle