warning C4067: unexpected tokens following preprocessor directive
Ostatnio zmodyfikowano 2010-01-12 17:12
DejaVu Temat założony przez niniejszego użytkownika |
warning C4067: unexpected tokens following preprocessor directive » 2010-01-11 12:35:50 W programie mam if'a następującego: #if 0x1234!=htons(0x1234)
#endif
Pytając się wujka google znalazłem następującą stronę: http://msdn.microsoft.com/en-us/library/fzk5a1hy(VS.71).aspxProblem w tym, że nie jestem w stanie ustawić wspomnianej flagi, ze względu na to iż jest deprecated od VC++ 2k5. Ponadto błąd pokazuje się wtedy, gdy w #f'ie występuje funkcja i ten przypadek raczej nie został opisany. Ktoś wie jak to rozwiązać? |
|
Elaine |
» 2010-01-11 16:39:37 Od kiedy w dyrektywach preprocesora można wywoływać funkcje? |
|
DejaVu Temat założony przez niniejszego użytkownika |
» 2010-01-11 17:43:40 A nie można? :P |
|
Elaine |
» 2010-01-11 19:46:49 Neen*. Preprocesor może przecież działać na kodzie innego języka (i nie wmawiaj mi łaskawie, że tylko teoretyzuję - np. w przypadku Haskella czasami się CPP używa), więc nie zna takiego pojęcia jak funkcje, dla niego istnieją tylko jego makra. W dodatku tu byłoby nawet z wywołaniem funkcji trudniej, bo ona jest zdefiniowana gdzieś w systemowych DLLach - skąd preprocesor miałby wiedzieć co ta funkcja robi?
* po niderlandzku "nie" |
|
DejaVu Temat założony przez niniejszego użytkownika |
» 2010-01-11 21:12:46 Twoja odpowiedź nie jest satysfakcjonująca ;p Masz inne rozwiązanie tego problemu tak, aby nie trzeba było ręcznie modyfikować kodu w zależności od architektury na której się kompiluje? |
|
Elaine |
» 2010-01-11 21:58:24 To twoje pytanie nie jest satysfakcjonujące, a nie moja odpowiedź... Hokus pokus, czary mary, fusy mówią (nie mogłeś walić prosto z mostu z tym pytaniem?), że to i tak trzeba zrobić w runtime - endian na wielu architekturach da się przełączać, a tylko w taki sposób można uzyskać 100% pewność.
Lekcja zadawania pytań: mów co konkretnie chcesz osiągnąć. Jeśli to zrobisz, to będzie łatwiej i tobie, i tym którzy ewentualnie będą chcieli pomóc. |
|
DejaVu Temat założony przez niniejszego użytkownika |
» 2010-01-12 08:09:07 Dzięki za Twoje odpowiedzi, temat zamykam. Chciałem mieć rozwiązanie na poziomie preprocesora, ale najwyraźniej nie jesteś w stanie mi pomóc. |
|
Patzick |
» 2010-01-12 17:11:03 otwieram na chwilę bo f.a.l. chciał coś dodać... |
|
« 1 » 2 |