kernighan-and-ritchie

    2

    2답변

    /* * 1-20. Write a program detab that replaces tabs in the input with the proper number * of blanks to space to the next tab stop. Assume a fixed set of tab stops, say every n columns. * Should n b

    0

    2답변

    - 제 2 판, 그들은 함수 strdup 따라서 정의 섹션 6.5 :이 char *strdup(char *s) { char *p; p = (char *) malloc(strlen(s) + 1) /* +1 for the '\0' */ if (p != NULL) strcpy(p, s); return p; }

    2

    1답변

    이 프로그램에서 무엇을해야합니까? 나는 이해할 수 없다. 질문은 다음과 같습니다. 입력란의 탭을 적절한 탭 번호 인 공백으로 대체하여 다음 탭 정지 지점으로 바꿀 수있는 프로그램 detab을 작성하십시오. 고정 된 탭 정지 세트, 즉 모든 n 개의 열을 가정하십시오. 변수 또는 기호 매개 변수 여야합니까? 탭 ('\ t')을 공백 ('')으로 바꾸기 시작했

    2

    2답변

    나는 현재 내가 말하는 연습 2-7, 해결 K & R.에서 "C 프로그래밍 언어"와 C를 배우고 : 시작 n 비트 x을 반환하는 함수 invert(x,p,n) 쓰기 을 p 위치가 반전 됨 (즉, 1이 0으로 변경되고 그 반대의 경우), 다른 비트는 변경되지 않습니다. #include <stdio.h> #define NUMBER 235 #define P

    2

    1답변

    다음 코드 스 니펫은 K &에서 가져온 것입니다. 5-11 장 : 포인터 함수 : qsort((void**) lineptr, 0, nlines-1, (int (*)(void *, void *)(numeric ? numcmp : strcmp)); 코드를 (void*)으로 컴파일/실행 할 수 있습니까? 그렇다면 (void **)으로 줄을 바꾸는 이

    2

    1답변

    나는 KnR을 팔로우하고있다. 이것은 연습 2-8입니다. 그것은 숫자를 몇 비트만큼 오른쪽으로 회전시키는 함수를 만드는 것이라고 말합니다. 대답은 '할 것 같다'라는 생각이 떠오르며 두 줄로 나왔습니다. 그러나, 나는 다른 방법을 온라인으로 확인하고 있었다. This SO answer은 각 비트를 하나씩 이동하는 것에 대해 이야기합니다. 내가 (아래 코드

    0

    1답변

    이 연습은 나를 미치게합니다. 미안 프로그래밍 문제가 사소한 것처럼 보일지라도 나는 초보자이므로 나와 함께 참아주십시오. 연습에서는 다음을 묻습니다. 각 입력 행에서 후미 공백과 탭을 제거하고 완전히 빈 줄을 삭제하는 프로그램을 작성하십시오. 아무도 내 코드가 작동하지 않는 이유를 말할 수 있습니까? 나는 아직 완전히 빈 줄의 문제를 다루지는 않았지만 내

    2

    2답변

    오히려 프로그래밍에 익숙하지 않으므로 나와 함께하시기 바랍니다. 연습 1-18에 대한 프롬프트가 있습니다. 각 입력 행에서 후미 공백과 탭을 제거하고 완전히 빈 줄을 삭제하는 프로그램 작성. 그리고 여기 내 코드입니다 : 내 프로그램이 내게 기대하는 출력을 제공하지 않습니다 #include <stdio.h> #define MAXLINE 1000 in

    1

    2답변

    저는 C 언어에 익숙하지 않아 지난 2 개월 동안 Kernighan과 Ritchie를 여가 시간에 읽고 있었고 Linux VM에서도 연습하려고했습니다. 나는 포인터에 관한 장에 있으며 설명이 필요하다. 이 장에서는 포인터를 사용하여 한 배열의 내용을 다른 배열로 복사하는 함수가 제공됩니다. 나는 그것이에 '\ 0'을 가리 킵니다 않습니다 결국 다음, 포인터

    -2

    3답변

    조금 혼란 스럽습니다. 내가 다음 코드는 작동하지 않는 순수한 C.에 쓰기 : char arr[] = "0x123"; printf(arr[0]); 그냥 예입니다. IDE (Code :: Blocks)가 다음을 생성합니다. 프로그램 수신 신호 SIGSEGV, Sigmentation fault. 왜이 코드가 작동하지 않습니까?