Change History (7)

comment:1 Changed 5 years ago by Артур Гулецкий (huletski)

Type: ожидается проверкаожидаются исправления

Никакая часть решения не пересобирается при модификации заголовочного файла (в примере ниже ожидается пересборка main.o, т.к. main.c включает измененный io.h):

{correct}[2047]$ pwd
/home/hfx/dvl/cpp19/yakushina.tatyana/cpp19/lab_01/correct
{correct}[2048]$ svn up
Updating '.':
At revision 406.
{correct}[2049]$ svn status
{correct}[2050]$ make
mkdir bin
gcc ./src/io.c -Iinclude -c -Wall -Wextra -Werror -o ./bin/io.o 
gcc ./src/algorithm.c -Iinclude -c -Wall -Wextra -Werror -o ./bin/algorithm.o
gcc ./src/main.c -Iinclude -c -Wall -Wextra -Werror -o ./bin/main.o
gcc ./src/util.c -Iinclude -c -Wall -Wextra -Werror -o ./bin/util.o 
gcc ./bin/io.o ./bin/algorithm.o ./bin/main.o ./bin/util.o -Wall -Wextra -Werror -o lab_01
{correct}[2051]$ cat src/main.c 
#include<algorithm.h>
#include<io.h>
#include<util.h>

int main() {
int a = doComputation(5, 7.0);
int b = 5;
max(a, b);
logDebug('!');
return 0;
}
{correct}[2052]$ touch include/io.h
{correct}[2053]$ make
make: Nothing to be done for 'all'.

Кроме этого, как минимум нужно исправить:

  • собственные заголовочные файлы принято включать так: #include "имя_файла.h". Обратите внимание на кавычки и пробел перед именем файла;
  • отсутствуют отступы перед командами в теле функции main.

comment:2 Changed 5 years ago by Артур Гулецкий (huletski)

Type: ожидаются исправленияожидается проверка

В соответствии со #107 "ожидается проверка".

Last edited 5 years ago by Артур Гулецкий (huletski) (previous) (diff)

comment:3 Changed 5 years ago by Артур Гулецкий (huletski)

Type: ожидается проверкаожидаются исправления
Version: 1.02.0

Correct

Не собирается.

{correct}[2228]$ make
mkdir bin
gcc src/io.c -Iinclude -c -Wall -Wextra -Werror -o bin/io.o 
gcc src/algorithm.c -Iinclude -c -Wall -Wextra -Werror -o bin/algorithm.o
src/algorithm.c:1:9: fatal error: lgorithm.h: No such file or directory
    1 | #include"lgorithm.h"
      |         ^~~~~~~~~~~~
compilation terminated.
Makefile:16: recipe for target 'bin/algorithm.o' failed
make: *** [bin/algorithm.o] Error 1

Unresolved, Multiple

Линковка падает с нужными ошибками, но изменения не минимальны (часть строк отличается из-за пробельных символов, часть - из-за опечаток):

{lab_01}[2237]$ diff -r correct multiple
Only in correct: bin
diff -r correct/include/algorithm.h multiple/include/algorithm.h
1d0
< #pragma once
diff -r correct/include/io.h multiple/include/io.h
1d0
< #pragma once
diff -r correct/src/algorithm.c multiple/src/algorithm.c
1c1
< #include"lgorithm.h"
---
> #include"algorithm.h"
6c6
< 	int c = max(a, b);
---
> 	int c = max(a, b); 
diff -r correct/src/io.c multiple/src/io.c
5c5
< 	printf(" %c ",symbol);
---
> 	printf("%c",symbol);
6a7,8
> 
> 
diff -r correct/src/main.c multiple/src/main.c
11a12,19
> 
> float max(float a, float b) {
> 	logDebug('m');
> 	if (a > b) 
> 		return a;
> 	else
> 		return b;
> }
diff -r correct/src/util.c multiple/src/util.c
6c6
< 	if (a > b) 
---
> 	if (a > b)
10a11
> 

Итог: 0.4 из 0.5. Сделаете так, чтобы diff не выводил совсем уж лишние строки - будет полный балл.

Так же, повторюсь, между #include и угловой скобкой/кавычкой обычно ставят пробел. Вы этого почему-то не делаете, и от этого включения файлов выглядят непривычно.

comment:4 Changed 5 years ago by yakushina.tatyana

Version: 2.03.0

comment:5 Changed 5 years ago by Артур Гулецкий (huletski)

Насколько понимаю по смене версии, мне нужно проверить исправления. Не забывайте, пожалуйста, менять тип тикета на "ожидаются исправления".

comment:6 Changed 5 years ago by Артур Гулецкий (huletski)

Type: ожидаются исправленияожидается проверка

comment:7 Changed 5 years ago by Артур Гулецкий (huletski)

Resolution: задача сдана
Status: assignedclosed
Type: ожидается проверкаожидаются исправления

Ок, +1

Note: See TracTickets for help on using tickets.