elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


+  Foro de elhacker.net
|-+  Foros Generales
| |-+  Sugerencias y dudas sobre el Foro (Moderador: el-brujo)
| | |-+  ¿Les molestaría si hiciera preguntas sobre codes que pongan?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: ¿Les molestaría si hiciera preguntas sobre codes que pongan?  (Leído 6,452 veces)
Tachikomaia


Desconectado Desconectado

Mensajes: 1.217


Superhacker (es broma xD )


Ver Perfil
¿Les molestaría si hiciera preguntas sobre codes que pongan?
« en: 2 Febrero 2023, 03:53 am »

Ejemplo alguien posteó esto para C++ creo.
Código
  1. #include <iostream>
  2. int main()
  3. {
  4.    std::cout << "Bienvenido ";
  5.    std::cout << "a C++!\n";
  6.    return 0;
  7. }
¿Qué hace cada línea? Es que no le veo mucho sentido, no a eso particularmente, sino a cuando ponen includes y otras cosas que nunca usé. Supongo que los includes sirven para que en vez de incluir todo sólo se incluya lo necesario para ahorrar memoria, pero no me cae mucho, no sé xP Además este programa parece ser como un hola mundo ¿hay casos en que lostream no se agrega entonces? ¿cómo es posible si parece hacer algo tan básico? ¿qué hace y cuando no es necesario?

No entendí esto
https://es.wikibooks.org/wiki/Programaci%C3%B3n_en_C%2B%2B/Streams#:~:text=La%20iostream%20es%20la%20biblioteca,uso%20de%20la%20biblioteca%20iostream.
cin, cout, cerr y clog me suena a chino.

Bueno, eso fue sólo un ejemplo.

No quiero hacer preguntas como estas si les molesta, así que díganme si es el caso.

Otra cuestión sería dónde, si en el tema origen o en otro.

En el tema origen no es muy recomendable, sería desviarlo.

Pero empezar a crear tantos temas por cuestiones tan básicas (para quien las sepa, no para mí) tampoco parece buena idea ¿o sí?

No es que quiera aprender cada cosa de cada lenguaje, es que ver ciertas cosas varias veces lkleva a preguntarse qué es eso y qué ventaja tienen esos lenguajes usados, por qué se usan.

Gracias.


En línea

Lieutenant McFarley

Desconectado Desconectado

Mensajes: 49



Ver Perfil
Re: ¿Les molestaría si hiciera preguntas sobre codes que pongan?
« Respuesta #1 en: 2 Febrero 2023, 12:29 pm »

C y C++ son lenguajes con muy pocas sentencias/instrucciones. En cambio tienen muchas bibliotecas de funciones más o menos estándar que ya están escritas en C/C++ y se pueden incluir sin tener que escribirlas cada programador nuevamente cada vez.

Esas bibliotecas se incluyen con la directiva #include que le dice al compilador que busque esa biblioteca e incluya las funciones correspondientes.

En particular C/C++ no tienen instruciones propias de entrada/salida, como casi todos los lenguajes; pero existen bibliotecas ya escritas que hacen esa función; pero hay que incluirlas si se quieren usar.

"iostream"  (Input/Output Stream) es un biblioteca estándar de entrada/salida en C++, como "stdio.h" (standard input-output header" (cabecera estándar E/S)) lo es en C (aquí se usaría principalmente la función "printf").

La función "cout" es la función típica para escribir por pantalla (lo que va entre comillas). Como se va a usar -y no pertenece propiamente a C++) hay que decirle al compilador que la busque y la incluya. En este caso ha habido redundancia ya que que el "#include " va a incluir todas las funcionaes de esa cabecera. Mientras que el "std:" lo que dice es que incluya particularmente esa función (la "cout"); por lo cual si usas "#include" no haría falta usar "std", y viceversa.

La secuencia de escape "/n" se usa para indicar un salto de línea.

----------

A mi en particular no me importa que hagas preguntas, si me apetece contestaré y si no, no.

Ahora bien, estas cosas las puedes encontrar perfectamente en Google u otro buscador. Solo pones "lenguaje C", "#include" "std" "cout" "cin" (cin es la instrucción de entrada para la biblioteca "iostream", al igual que "scanf" lo es para "stdio.h") y te saldrá un montón de información. Ya he visto en otros mensajes y en las reglas, que antes de preguntar hay que informarse por uno mismo lo que pueda, y preguntar dudas concretas y no de carácter general. Y así mismo hay muchos manuales en la red de C y C++ y otros lenguajes para tener una noción aunque sea ligera de ellos.

Así que... tú mismo.


En línea

Locura_23

Desconectado Desconectado

Mensajes: 162



Ver Perfil
Re: ¿Les molestaría si hiciera preguntas sobre codes que pongan?
« Respuesta #2 en: 2 Febrero 2023, 21:32 pm »

A grandes rasgos significa esto

Código
  1. #include<iostream>

Esta linea le dice al programa "agrega esta porcion de codigo a mi programa (se llama libreria)" esta libreria lo que te permite es utilizar instrucciones que fueron definidas ahi. iostream es una libreria basica del lenguaje C++.

Código
  1. int main()
  2. {
  3.  
  4. }

esto se llama funcion main, todo programa cuando se ejecuta tiene que empezar desde algun lado no? entonces desde aqui se empiezan a ejecutar, se dice que es el "punto de entrada" del programa.

Código
  1. std::cout << "Bienvenido ";
  2. std::cout << "a C++!\n";

con std::cout << imprimis un mensaje por la consola, en este caso es "Bienvenido",
nota que esto se podria haber abreviado así:

Código
  1. std::cout<< "Bienvenido a C++!\n";

Código
  1. return 0;

con return se termina el programa

Por ultimo nota que C y C++ son lenguajes que pueden llegar a ser complejos para alguien que empieza.
Mira este programa que hace exactamente lo mismo pero en el lenguaje de programación Python:

Código
  1. print("Bienvenido a C++!")

Por qué se utiliza C++ si es mas complejo entonces? porque C++ es bueno para hacer algunas cosas con la PC (por ejemplo, manejar la memoria de la pc) y sus programas son rapidos.
 




« Última modificación: 2 Febrero 2023, 21:39 pm por Locura_23 » En línea

Danielㅤ


Conectado Conectado

Mensajes: 1.681


🔵🔵🔵🔵🔵🔵🔵


Ver Perfil
Re: ¿Les molestaría si hiciera preguntas sobre codes que pongan?
« Respuesta #3 en: 2 Febrero 2023, 22:12 pm »

Hola, estas dos líneas:

Código
  1. std::cout << "Bienvenido ";
  2. std::cout << "a C++!\n";
  3.  

se las puede reducir de esta forma:

Código
  1. std::cout << "Bienvenido \na C++!\n";
  2.  

Por otro lado la instrucción return 0; significa que el programa termina su ejecución de una función devolviendo el valor 0, que quiere decir que no hay errores y cuando si hay errores (al menos uno) entonces devuelve el valor 1.


Saludos
« Última modificación: 2 Febrero 2023, 23:01 pm por Danielㅤ » En línea

MinusFour
Moderador Global
***
Desconectado Desconectado

Mensajes: 5.529


I'm fourth.


Ver Perfil WWW
Re: ¿Les molestaría si hiciera preguntas sobre codes que pongan?
« Respuesta #4 en: 3 Febrero 2023, 04:47 am »

Yo creo que explicar #include involucra explicar porque se utilizan cabeceras. Las respuestas del tema hacen creer que al poner los includes estás incluyendo las librerias como tal. No, generalmente estás incluyendo las cabeceras de las librerias solamente. De hecho, la instrucción es literalmente remplazada por el contenido de ese archivo así que podría ir más allá de eso.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Preguntas sobre PHP.
PHP
. . . 2 2,366 Último mensaje 28 Enero 2010, 02:25 am
por . . .
preguntas sobre sobre VPNs ¿Cuál es más segura?
Redes
beginner_ 3 2,625 Último mensaje 30 Abril 2013, 05:44 am
por engel lex
El FBI ya iba tras Snowden días antes de que hiciera pública la información ...
Noticias
wolfbcn 0 1,472 Último mensaje 13 Junio 2013, 21:46 pm
por wolfbcn
Microsoft desconecta su bot millenial luego de que hiciera comentarios racistas
Noticias
wolfbcn 0 1,148 Último mensaje 24 Marzo 2016, 21:47 pm
por wolfbcn
Preguntas sobre web
Desarrollo Web
Baider 3 3,062 Último mensaje 7 Julio 2017, 21:45 pm
por engel lex
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines