¿Cuál es la diferencia entre & y + en la operación de concatenación de cadenas en Visual Basic?

2 Respuestas


  • En realidad, estos dos operadores & y + se utilizan para concatenar más de una cadena para formar una sola cadena. es necesario para la función de impresión.
    La sintaxis para usar estos dos operadores de concatenación se da como:
    S1 = "mi"
    S2 = "nombre"
    Podemos concatenar estas cadenas S1 y S2 usando los operadores + y & como:
    S3 = S1 + S2
    O
    S3 = S1 y S2
    Si ambos Los operandos que necesitan ser concatenados son de tipo cadena, entonces cualquiera de estos dos operadores puede usarse indistintamente.
    Pero en el caso de que ambos operadores sean de tipos diferentes, el operador + para la concatenación creará un error.
    Consideremos que hay dos operandos (uno de tipo cadena y otro de tipo entero) que deben concatenarse como:
    S3 = "HOLA" + 12

    En el caso anterior, visual basic primero intenta convertir el operando de cadena ("HOLA") a su código numérico y luego agregarlo al valor entero 12, por lo que se generará un error de falta de coincidencia de tipo en el momento de la ejecución. Como, el signo más (+) también se usa en operaciones aritméticas, por lo tanto, si lo usamos también para la concatenación de cadenas, creará una ambigüedad para los lectores. Por lo tanto, normalmente preferimos el signo y como operador de concatenación de cadenas.
  • La concatenación se utiliza para unir 2 o más cadenas. En VB, el operador '&' se usa para concatenar 2 o más cadenas juntas. por ejemplo,

    Dim var AS string
    var = "Hello" & "World!"

    Que aparecerá como una sola cadena. "¡Hola Mundo!"

    Mientras que el operador '+' se usa generalmente para agregar dos o más valores numéricos. A veces, uno de ellos también puede ser una cadena (pero solo valores numéricos). Aparte de eso, también se puede utilizar para la concatenación de cadenas.

    por ejemplo,
    ".15" + 45 dará un valor numérico = 45.15
    ".15" + "45" dará un valor concatenado ".1545"

Escribe tu respuesta

Tu respuesta aparecerá después de la moderación