Простенькая прога над числами

Тема в разделе "Общие вопросы по С и С++", создана пользователем Elyad, 10 окт 2006.

Статус темы:
Закрыта.
  1. Elyad

    Elyad Гость

    Помогите отладить простенькую прогу.
    Надо содержимое буфера сравнить с 0x01 и записать yes в случае совпадения.
    char s[2];
    int n=0x01, d;

    strcpy(s,"0x01\n");
    d=atoi(s);
    if (d==0x01) puts("yes");
    else puts("no");

    или
    char s[2];
    strcpy(s,"0x01\n");
    if (s[0]==0x01) puts("yes");
    else puts("no");
    почему все время при запуске выдает : no
     
  2. sdriver

    sdriver Гость

    Отладте программу и заодно просмотрите, как работает strcpy.
     
  3. Maxx

    Maxx Гость

    символы в строке задаются так "\x12\x23\x34", а строка "0x01\n" содержит 5 символов ('0', 'x', '0', '1', '\n') и завершающий ноль
    буфер s должен вмещать 3 символа (char s[3]) т.к. строки в C завершаются нулем
     
Загрузка...
Статус темы:
Закрыта.

Поделиться этой страницей