--
--
¿Eres miembro de "CyC++ Buenos Aires" verdad? Si no lo eres, has recibido este mesaje por error.
En caso de duda visita "http://groups.google.com/group/cppba"
---
Has recibido este mensaje porque estás suscrito al grupo "CyC++ Buenos Aires" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a cppba+un...@googlegroups.com.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/cppba/CAFdMc-0gpdq04ksjiMBDseZdvmWmqsqFxFzGHLxBo%3DYcU%3DhwFQ%40mail.gmail.com.
a = !!(val & BYT_BCR_WPD)
--
Hola!,On Thu, Jul 16, 2020 at 11:45 AM Daniel Gutson <daniel...@gmail.com> wrote:a = !!(val & BYT_BCR_WPD)BYT.... debe ser una máscara.Entonces, si VAL tiene ese bit encendido, el AND con val de da algún número distinto de cero.Y la doble negación fuerza a que sea 1 o 0.¿vamos bien?
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/cppba/CAJmrmc-f93BGeCO_tmTigR-%2BQw3e%2BOUZvMKJzGxkbfxrgdHB8g%40mail.gmail.com.
Por qué está mal lo que dijo RFOG?
y por qué está hecho de esa forma?
¿Convertirlo todo a ceros o todo a unos, dependiendo del valor de la constante?
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/cppba/CAN0rX-1YL_ThLUeSkB01V_e3uM%2BmWQ9ndXdhR-1OvazRZNnzrw%40mail.gmail.com.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/cppba/CAFdMc-3jPNgDPB_0jz0vx5f8efp0TAGC449_22%3DtbhsUD10Vfg%40mail.gmail.com.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/cppba/CAA%2BHS%3DCT1m0VMeYGMjDttfe7eZbKYxMahijNwvDPzt0wEebmKg%40mail.gmail.com.
Entonces al hacer !! lo lleva a boolean. Para mí es ingenioso.
El 16 jul 2020, a las 20:37, Daniel Gutson <daniel...@gmail.com> escribió:El jue., 16 de jul. de 2020 a la(s) 12:03, RFOG (rafael....@gmail.com) escribió:¿Convertirlo todo a ceros o todo a unos, dependiendo del valor de la constante?Tu problema me parece es que estás creyendo que es una operación bitwise, estás pensando en ~ en vez de !.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/cppba/CAFdMc-3jPNgDPB_0jz0vx5f8efp0TAGC449_22%3DtbhsUD10Vfg%40mail.gmail.com.
El 16 jul 2020, a las 21:37, Enrique Nieloud <enie...@gmail.com> escribió:
Entonces al hacer !! lo lleva a boolean. Para mí es ingenioso.está bueno, pero debe haber otra razón. Sino por qué no usar directamente val & BYT_BCR_WPD como booleano?
--
--
¿Eres miembro de "CyC++ Buenos Aires" verdad? Si no lo eres, has recibido este mesaje por error.
En caso de duda visita "http://groups.google.com/group/cppba"
---
Has recibido este mensaje porque estás suscrito al grupo "CyC++ Buenos Aires" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a cppba+un...@googlegroups.com.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/cppba/CAJmrmc9FioSK3ekPb90koLMBfbhnic%3DF6zELNg%2BkbXHiLheQrQ%40mail.gmail.com.
Entonces al hacer !! lo lleva a boolean. Para mí es ingenioso.está bueno, pero debe haber otra razón. Sino por qué no usar directamente val & BYT_BCR_WPD como booleano?
--
--
¿Eres miembro de "CyC++ Buenos Aires" verdad? Si no lo eres, has recibido este mesaje por error.
En caso de duda visita "http://groups.google.com/group/cppba"
---
Has recibido este mensaje porque estás suscrito al grupo "CyC++ Buenos Aires" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a cppba+un...@googlegroups.com.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/cppba/CAJmrmc9FioSK3ekPb90koLMBfbhnic%3DF6zELNg%2BkbXHiLheQrQ%40mail.gmail.com.
> está bueno, pero debe haber otra razón. Sino por qué no usar directamente val & BYT_BCR_WPD como booleano?El resultado está garantizado va a ser 1 o 0. Sin conocer el contexto de BYT_BCR_WPD diría que el `!!` es porque el autor sospecha que val&BYT_BCR_WPD puede, de alguna forma, tener una comparación con un valor explícito. (Y si no fuera parte del kernel hasta sospecharía que hay un `#define TRUE 1` detrás del idiom!)
Entonces al hacer !! lo lleva a boolean. Para mí es ingenioso.está bueno, pero debe haber otra razón. Sino por qué no usar directamente val & BYT_BCR_WPD como booleano?
--
--
¿Eres miembro de "CyC++ Buenos Aires" verdad? Si no lo eres, has recibido este mesaje por error.
En caso de duda visita "http://groups.google.com/group/cppba"
---
Has recibido este mensaje porque estás suscrito al grupo "CyC++ Buenos Aires" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a cppba+un...@googlegroups.com.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/cppba/CAJmrmc9FioSK3ekPb90koLMBfbhnic%3DF6zELNg%2BkbXHiLheQrQ%40mail.gmail.com.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/cppba/CAFdMc-3U2V2nj6%2BkN3YTxjPqmKN6nMT-MyKm2J01Z5GZmqL3%2Bw%40mail.gmail.com.
Mucho más claro es escribir:a = ((val & BYT_BCR_WPD) != 0)
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/cppba/CAN_JHjmMN2rEWGdkSxbQ9vJuD-_3%2BJqJmNoay%2BQEtwuMRaBAfg%40mail.gmail.com.
Y me salto la duda, si != 0 es mas eficiente que !!, pero no, en gcc, ya con -O1 se da cuenta que hacen lo mismo. Esto es con -O2
El vie., 17 de jul. de 2020 a la(s) 11:05, Carlos Cattaneo (carlosca...@gmail.com) escribió:
Mucho más claro es escribir:
a = ((val & BYT_BCR_WPD) != 0)
El 17 jul 2020, a las 20:56, Enrique Nieloud <enie...@gmail.com> escribió:
On Fri, Jul 17, 2020 at 11:37 AM Daniel Gutson <daniel...@gmail.com> wrote:
Y me salto la duda, si != 0 es mas eficiente que !!, pero no, en gcc, ya con -O1 se da cuenta que hacen lo mismo. Esto es con -O2
<image.png>
De curioso, ¿esa captura de qué ambiente de trabajo es?El vie., 17 de jul. de 2020 a la(s) 11:05, Carlos Cattaneo (carlosca...@gmail.com) escribió:
Mucho más claro es escribir:
a = ((val & BYT_BCR_WPD) != 0)Nah... el otro era mucho más cheto, y todo el mundo sabe que ese es el criterio cuenta!
--
--
¿Eres miembro de "CyC++ Buenos Aires" verdad? Si no lo eres, has recibido este mesaje por error.
En caso de duda visita "http://groups.google.com/group/cppba"
---
Has recibido este mensaje porque estás suscrito al grupo "CyC++ Buenos Aires" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a cppba+un...@googlegroups.com.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/cppba/CAJmrmc_uxPEEEbhFCDsNtS2cUNVd5-2M5aWxFZNPsf2TwAVAZw%40mail.gmail.com.
On Fri, Jul 17, 2020 at 11:37 AM Daniel Gutson <daniel...@gmail.com> wrote:Y me salto la duda, si != 0 es mas eficiente que !!, pero no, en gcc, ya con -O1 se da cuenta que hacen lo mismo. Esto es con -O2De curioso, ¿esa captura de qué ambiente de trabajo es?
El vie., 17 de jul. de 2020 a la(s) 11:05, Carlos Cattaneo (carlosca...@gmail.com) escribió:
Mucho más claro es escribir:
a = ((val & BYT_BCR_WPD) != 0)Nah... el otro era mucho más cheto, y todo el mundo sabe que ese es el criterio cuenta!
--
--
¿Eres miembro de "CyC++ Buenos Aires" verdad? Si no lo eres, has recibido este mesaje por error.
En caso de duda visita "http://groups.google.com/group/cppba"
---
Has recibido este mensaje porque estás suscrito al grupo "CyC++ Buenos Aires" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a cppba+un...@googlegroups.com.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/cppba/CAJmrmc_uxPEEEbhFCDsNtS2cUNVd5-2M5aWxFZNPsf2TwAVAZw%40mail.gmail.com.
On Fri, Jul 17, 2020 at 11:37 AM Daniel Gutson <daniel...@gmail.com> wrote:Y me salto la duda, si != 0 es mas eficiente que !!, pero no, en gcc, ya con -O1 se da cuenta que hacen lo mismo. Esto es con -O2De curioso, ¿esa captura de qué ambiente de trabajo es?
El vie., 17 de jul. de 2020 a la(s) 11:05, Carlos Cattaneo (carlosca...@gmail.com) escribió:
Mucho más claro es escribir:
a = ((val & BYT_BCR_WPD) != 0)Nah... el otro era mucho más cheto, y todo el mundo sabe que ese es el criterio cuenta!
--
--
¿Eres miembro de "CyC++ Buenos Aires" verdad? Si no lo eres, has recibido este mesaje por error.
En caso de duda visita "http://groups.google.com/group/cppba"
---
Has recibido este mensaje porque estás suscrito al grupo "CyC++ Buenos Aires" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a cppba+un...@googlegroups.com.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/cppba/CAJmrmc_uxPEEEbhFCDsNtS2cUNVd5-2M5aWxFZNPsf2TwAVAZw%40mail.gmail.com.