C 기능을 건너 뜁니다.

AgentSpyname

Pebble App SDK 및 C에 대해 더 잘 알기 위해 수정하는 테스트 앱에 문제가 있습니다. 임은 내 코드가 함수를 실행하도록 시도 inbox_received_callback(DictionaryIterator *iterator, void *context)하지만 어떤 이유로 든 C는 코드를 건너 뛰고 다른 기능을 계속 실행합니다. 예제에서 미리 작성된 다른 모든 기능은 문제없이 실행됩니다.

C가이 함수를 건너 뛰기로 결정한 이유는 무엇이며이 코드를 건너 뛰지 않도록하려면 어떻게해야합니까?

weather_app_data.c

    ...other functions listed
void inbox_received_callback(DictionaryIterator *iterator, void *context) {
  // Store incoming information
    strcpy(city, "test");
     static char temperature_buffer[8];
  static char conditions_buffer[32];
  static char weather_layer_buffer[32];
  // Read first item
  Tuple *t = dict_read_first(iterator);

  // For all items
  while(t != NULL) {
    // Which key was received?
    switch(t->key) {
    case KEY_0:
      snprintf(temperature_buffer, sizeof(temperature_buffer), "%dC", (int)t->value->int32);
      break;
    case KEY_1:
      snprintf(conditions_buffer, sizeof(conditions_buffer), "%s", t->value->cstring);
      break;
    default:
      APP_LOG(APP_LOG_LEVEL_ERROR, "Key %d not recognized!", (int)t->key);
      break;
    }

    // Look for next item
    t = dict_read_next(iterator);
  }


}

}


static WeatherAppDataPoint s_data_points[] = {
    {
        .city = city, //This value is left blank by C even though defined in function that isn't running
        .description = "Light Rain.",
        .icon = WEATHER_APP_ICON_LIGHT_RAIN,
        .current = 68,
        .high = 70,
        .low = 60,
    },
    ...other items
};

weather_app_data.h

... other functions all listed
void inbox_received_callback(DictionaryIterator *iterator, void *context);
 void inbox_dropped_callback(AppMessageResult reason, void *context);
 void outbox_failed_callback(DictionaryIterator *iterator, AppMessageResult reason, void *context);
엉뚱한

특정 답변을 제공 할 수있는 충분한 코드를 제공하지 않으 셨지만 보여 주신 내용에 따라 @Peter가 머리에 못 박힌 것 같습니다.

을 호출하는 코드를 표시하지 않습니다 inbox_received_callback. 컴파일러 최적화 플래그에 따라 적어도 두 가지 다른 것을 볼 수 있습니다.

  1. 컴파일러가 함수를 호출하지 않았기 때문에 컴파일러가 함수를 최적화했기 때문에 함수가 디스 어셈블리에 표시되지 않습니다 (일반적으로 -O2 이상에서 발생).
  2. 디스 어셈블리에서 함수를 볼 수 있지만 아무도 호출하지 않았기 때문에 아무 작업도 수행하지 않습니다 (-O0으로 표시됨).

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

C # Stream이 계속 첫 번째 줄을 건너 뜁니다.

분류에서Dev

파이프에서 정수 읽기는 C의 값을 건너 뜁니다.

분류에서Dev

DateTime 수정 기능이 2 월을 건너 뜁니다.

분류에서Dev

Elasticsearch는 @ -symbol을 건너 뜁니다.

분류에서Dev

c 코드가 설명 할 수없이 줄을 건너 뜁니다.

분류에서Dev

cin.ignore ()를 사용한 후에도 C ++ cin을 건너 뜁니다.

분류에서Dev

분할 기능이 결과를 건너 뜁니다 VB.NET

분류에서Dev

애니메이션 GIF가있는 C # PictureBox가 프레임을 건너 뜁니다.

분류에서Dev

Where 절이 조건을 건너 뜁니다.

분류에서Dev

Python, 함수가 조건을 건너 뜁니다.

분류에서Dev

Python : 재귀 생성기가 값을 건너 뜁니다.

분류에서Dev

C # for 루프가 한 단계를 건너 뜁니다.

분류에서Dev

C-scanf를 건너 뜁니다 ( "% d"에서도).

분류에서Dev

StreamReader는 다음 줄을 얻고 빈 줄을 건너 뜁니다.

분류에서Dev

여기 문서에서 읽기를 건너 뜁니다.

분류에서Dev

Alt-Tab을 사용하면 창을 건너 뜁니다.

분류에서Dev

`child ()`의 기호를 건너 뜁니다 : Python 용 Pyrebase

분류에서Dev

파일을 복사하지만 오류를 건너 뜁니다.

분류에서Dev

LIKE 문이지만 현재 게시물을 건너 뜁니다.

분류에서Dev

Readline이 첫 번째 줄을 건너 뜁니다.

분류에서Dev

Python 작성자가 첫 번째 행을 건너 뜁니다.

분류에서Dev

PowerShell이 Get-Volume을 건너 뜁니다.

분류에서Dev

SQLSRV는 쿼리를 반환 할 때 행을 건너 뜁니다.

분류에서Dev

파이썬은 빈 셀을 건너 뜁니다

분류에서Dev

때때로 Properties.load ()는 줄을 건너 뜁니다.

분류에서Dev

파일을 복사하지만 오류를 건너 뜁니다.

분류에서Dev

Makefile이 특정 종속성을 건너 뜁니다.

분류에서Dev

Vim 이동 단어가 점을 건너 뜁니다.

분류에서Dev

결합 문자열은 첫 번째 줄을 건너 뜁니다.

Related 관련 기사

  1. 1

    C # Stream이 계속 첫 번째 줄을 건너 뜁니다.

  2. 2

    파이프에서 정수 읽기는 C의 값을 건너 뜁니다.

  3. 3

    DateTime 수정 기능이 2 월을 건너 뜁니다.

  4. 4

    Elasticsearch는 @ -symbol을 건너 뜁니다.

  5. 5

    c 코드가 설명 할 수없이 줄을 건너 뜁니다.

  6. 6

    cin.ignore ()를 사용한 후에도 C ++ cin을 건너 뜁니다.

  7. 7

    분할 기능이 결과를 건너 뜁니다 VB.NET

  8. 8

    애니메이션 GIF가있는 C # PictureBox가 프레임을 건너 뜁니다.

  9. 9

    Where 절이 조건을 건너 뜁니다.

  10. 10

    Python, 함수가 조건을 건너 뜁니다.

  11. 11

    Python : 재귀 생성기가 값을 건너 뜁니다.

  12. 12

    C # for 루프가 한 단계를 건너 뜁니다.

  13. 13

    C-scanf를 건너 뜁니다 ( "% d"에서도).

  14. 14

    StreamReader는 다음 줄을 얻고 빈 줄을 건너 뜁니다.

  15. 15

    여기 문서에서 읽기를 건너 뜁니다.

  16. 16

    Alt-Tab을 사용하면 창을 건너 뜁니다.

  17. 17

    `child ()`의 기호를 건너 뜁니다 : Python 용 Pyrebase

  18. 18

    파일을 복사하지만 오류를 건너 뜁니다.

  19. 19

    LIKE 문이지만 현재 게시물을 건너 뜁니다.

  20. 20

    Readline이 첫 번째 줄을 건너 뜁니다.

  21. 21

    Python 작성자가 첫 번째 행을 건너 뜁니다.

  22. 22

    PowerShell이 Get-Volume을 건너 뜁니다.

  23. 23

    SQLSRV는 쿼리를 반환 할 때 행을 건너 뜁니다.

  24. 24

    파이썬은 빈 셀을 건너 뜁니다

  25. 25

    때때로 Properties.load ()는 줄을 건너 뜁니다.

  26. 26

    파일을 복사하지만 오류를 건너 뜁니다.

  27. 27

    Makefile이 특정 종속성을 건너 뜁니다.

  28. 28

    Vim 이동 단어가 점을 건너 뜁니다.

  29. 29

    결합 문자열은 첫 번째 줄을 건너 뜁니다.

뜨겁다태그

보관