2012-06-24 3 views
-3

Я хочу выполнить этот код для запуска автоматической постановки задач, так как этот код имеет две ошибки. Я не могу понять, какие исправления.c код при планировании задач

Ошибки "(в функции 'главный')" и "(недействительный именующее присваивание)"

#include<unistd.h> 
#include<stdio.h> 
#include<stdlib.h> 
#include<time.h> 
#include<string.h> 

int main() 
{ 
    char *timetoken; 
    char currtime[7]; 
    char schedtime[9]; 
    int i; 
    struct tm *localtimeptr; 
    strcpy(schedtime,"15:25:00"); 
    while(true) 
    { 
     time_t lt; 
     sleep(1); 
     time(&lt); 
     localtimeptr = localtime(&lt); 
     timetoken=strtok(asctime(localtimeptr)," "); 
     for(i=1;i<5;i++) 
      timetoken=strtok(NULL," "); 
     if(i==3) 
     { 
      strcpy(currtime,timetoken); 
     } 
    } 
    printf("The current time is: %s\n",currtime); 
    printf("We are waiting for: %s\n",schedtime); 
    if(!strcmp(currtime,schedtime)) 
    { 
     printf("Time to do stuff \n"); 
     system("ROBOCOPY C:\\oslab E:\\BACKUP /e/mir/np /log:backup_log.txt"); 
    }   
    getch(); 
    return 0;      
}  
+0

ошибку на какой линии? –

+0

@OliCharlesworth: ошибка на 18-й строчке. – scheduling

+0

Что вы пробовали? Например, вы узнали о том, что такое lvalue, и определите, что используется как lvalue в строке, где произошла ошибка, и рассмотрите, является ли это допустимым значением lvalue? Кроме того, правильно отформатируйте свой код. –

ответ

0

time = (&lt);

Вы не определили переменную time ... вы уверен, что это не предназначалось для установки другой переменной?

+1

'while (6! = 9)' также выглядит странно странным. 6 никогда не будет 9, независимо от того, сколько раз вы проверяете! –

+0

: Я упоминал эту ссылку здесь http://www.cplusplus.com/reference/clibrary/ctime/localtime/ и написал код – scheduling

+0

Это прекрасно, но независимо от того, как работает «localtime», 6 всегда будут 6, нет больше и не меньше. 'if (i == 3)' никогда не будет истинным. –

0
time = (&lt); 

Вы пытаетесь присвоить time, но вы сами никогда ничего под названием time не объявлялась. Соответственно, вы пытаетесь переназначить time(3) от time.h.

Может быть, вы имеете в виду что-то еще в этой линии, как

time(&lt); 
Смежные вопросы