Привет! Если вы читаете это - вы еще не зарегистрированы. Это займет не больше минуты. Нажмите здесь, чтобы пройти регистрацию в несколько простых шагов, чтобы получить доступ ко всем разделам нашего форума. Удачи!
Страница 1 из 4 123 ... ПоследняяПоследняя
Показано с 1 по 10 из 34

Тема: Директивы препроцессора

  1. #1
    Пользователь
    Регистрация
    03.04.2014
    Сообщений
    29
    Репутация: 3

    Звание: пока не определено

    Директивы препроцессора

    #include
    Подключает библиотеку к скрипту

    PHP код:
    #include "a_samp" 
    или
    PHP код:
    #include <a_samp> 


    #tryinclude
    Тоже самое что и #include, только при отсутствии библиотеки не будет выдавать ошибку

    PHP код:
    #tryinclude "a_samp" 
    или
    PHP код:
    #tryinclude <a_samp> 


    #define
    Заменяет себя на указанное значение,удобно для экономии памяти

    PHP код:
    #define MAX_PLAYERS 1000 


    #undef
    Отменяет действие #define

    PHP код:
    #undef  MAX_PLAYERS 


    #endinput
    Пропустить написанный ниже код



    #endif
    Определяет конец условного директивы
    PHP код:
    #define Primer
    main()
    {
        
    #if defined Primer
            
    printf("Пример");
        
    #endif



    #if
    #else
    #endif

    Условная обработка

    Примеры:
    PHP код:
    #define Primer 50
    main()
    {
        
    #if defined Primer
            
    printf("Задефайнен!");
        
    #else
            
    printf("Не задефайнен!");
        
    #endif

    PHP код:
    main()
    {
        
    #if defined Primer
            
    printf("Задефайнен!");
        
    #else
            
    printf("Не задефайнен!");
        
    #endif



    #error
    Выдаёт ошибку при компиляции с указанным текстом

    PHP код:
    #if !defined MAX_PLAYERS
        #error Не объявлен макрос MAX_PLAYERS 
    #endif 


    #pragma ctrlchar
    Заменяет escape-символ

    PHP код:
    main()
    {
    #pragma ctrlchar '^'
    print("Пример 1^nПример 2");



    #pragma semicolon
    Отключает ошибку: error 001: expected token: ";", but found "}"

    PHP код:
    main()
    {
    #pragma semicolon 0
    print("Пример 1^nПример 2")



    #pragma dynamic
    Установка динамичной памяти мода

    PHP код:
    #pragma dynamic 5000 


    #pragma unused
    Отключаем варинг: warning 203: symbol is never used: "primer"

    PHP код:
    #pragma unused primer
    new primer


    #pragma tabsize
    Отключаем табуляцию

    PHP код:
    main()
    {
    #pragma tabsize 0
    print("Пример 1^nПример 2");
        print(
    "Пример 1^nПример 2");
    print(
    "Пример 1^nПример 2");
        return 
    1;


  2. #2
    Проверенный Аватар для Engineer:
    Регистрация
    20.09.2011
    Адрес
    Украина.
    Возраст
    32
    Сообщений
    1,319
    Репутация: 180

    Звание: - весьма и весьма положительная личность

    Re: Директивы препроцессора

    Мы это знали когда еще Еминем у папки на трусах был.

  3. #3
    Пользователь
    Регистрация
    03.04.2014
    Сообщений
    29
    Репутация: 3

    Звание: пока не определено

    Re: Директивы препроцессора

    Мы - это не все.
    Я думаю найдутся те,кто ещё не знают.
    Цитата Сообщение от Engineer: Посмотреть сообщение
    Мы это знали когда еще Еминем у папки на трусах был.

  4. #4
    Администратор Аватар для Terner
    Регистрация
    11.04.2011
    Возраст
    28
    Сообщений
    2,824
    Репутация: 368

    Звание: - очень-очень хороший человек

    Re: Директивы препроцессора

    Тогда уж в раздел Pawn-WIKI

  5. #5
    Пользователь
    Регистрация
    03.04.2014
    Сообщений
    29
    Репутация: 3

    Звание: пока не определено

    Re: Директивы препроцессора

    Если не ошибаюсь,там этого нет.
    Цитата Сообщение от TERNER Посмотреть сообщение
    Тогда уж в раздел Pawn-WIKI

  6. #6
    Администратор Аватар для Terner
    Регистрация
    11.04.2011
    Возраст
    28
    Сообщений
    2,824
    Репутация: 368

    Звание: - очень-очень хороший человек

    Re: Директивы препроцессора

    SM: перенесено.

  7. #7
    Активный пользователь Аватар для aronc
    Регистрация
    08.10.2011
    Адрес
    Пермь
    Возраст
    31
    Сообщений
    433
    Репутация: 39

    Звание: на пути к лучшему

    Re: Директивы препроцессора

    "#define Заменяет себя на указанное значение,удобно для экономии памяти"

    Как экономит?

  8. #8
    unknown2154
    Бродяга

    Re: Директивы препроцессора

    Цитата Сообщение от aronc Посмотреть сообщение
    "#define Заменяет себя на указанное значение,удобно для экономии памяти"

    Как экономит?
    Ты можешь сделать:

    Код:
    new serverName[64] = "SAMP 0.3 server";
    А можешь сделать так:

    Код:
    #define serverName "SAMP 0.3 server"
    И не будет никакого расхода, ибо при компиляции все "serverName" автоматически заменятся на значение.

  9. #9
    Активный пользователь Аватар для aronc
    Регистрация
    08.10.2011
    Адрес
    Пермь
    Возраст
    31
    Сообщений
    433
    Репутация: 39

    Звание: на пути к лучшему

    Re: Директивы препроцессора

    Цитата Сообщение от Hidden125660 Посмотреть сообщение
    Ты можешь сделать:

    Код:
    new serverName[64] = "SAMP 0.3 server";
    А можешь сделать так:

    Код:
    #define serverName "SAMP 0.3 server"
    И не будет никакого расхода, ибо при компиляции все "serverName" автоматически заменятся на значение.
    Кто будет так делать? new serverName[64] = "SAMP 0.3 server";

    Я про то, что не экономит ни чего.

  10. #10
    unknown2154
    Бродяга

    Re: Директивы препроцессора

    Цитата Сообщение от aronc Посмотреть сообщение
    Кто будет так делать? new serverName[64] = "SAMP 0.3 server";

    Я про то, что не экономит ни чего.
    Еще как экономит

Страница 1 из 4 123 ... ПоследняяПоследняя

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •