tellp() en el manejo de archivos con c ++ con ejemplo

La función tellp() se utiliza con flujos de salida y devuelve la posición actual de «colocación» del puntero en el flujo. No tiene parámetros y devuelve un valor del tipo de miembro pos_type, que es un tipo de datos entero que representa la posición actual del puntero de secuencia de colocación.
Sintaxis: 
 

pos_type tellp();

Retorno: indicador de posición de salida actual en caso de éxito; de lo contrario, devuelve -1.
Ejemplo 1 – 
 

CPP

// cpp code to get the position at particular
// position using tellp() function
#include <iostream>
#include <fstream>
using namespace std;
 
int main()
{
    fstream file;
 
    // open file in read and write mode
    file.open("myfile.txt", ios::out);
    file << "geeksforgeeks";
 
    // print the position of the pointer in file
    cout << "the current position of pointer is :"
         << file.tellp() << endl;
 
    // close the open file
    file.close();
}

Producción – 
 

the current position of pointer is :-1

En el código anterior, tellp() devuelve la posición actual a la que apunta en un archivo.
Ejemplo 2 – 
 

CPP

// code to add content at particular position
// using tellp()
#include <fstream>
using namespace std;
 
int main()
{
    long position;
    fstream file;
 
    // open the file in read and write mode
    file.open("myfile.txt");
 
    // write content in the file
    file.write("this is an apple", 16);
    position = file.tellp();
 
    // set position of pointer using seekp
    file.seekp(position - 7);
    file.write(" sam", 4);
    file.close();
}

Producción – 
 

this is a sample

Aquí, la función tellp() devuelve la posición del puntero y luego, al usar la función seekp(), el puntero se desplaza hacia atrás desde la posición n, aquí se desplaza 7 posiciones hacia atrás y luego inserta el contenido en esa posición.
Este artículo es una contribución de Shivani Baghel . Si te gusta GeeksforGeeks y te gustaría contribuir, también puedes escribir un artículo usando write.geeksforgeeks.org o enviar tu artículo por correo a review-team@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.
Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.
 

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *