Benutzer-Werkzeuge

Webseiten-Werkzeuge


spielplatz:student:42:convertnumber

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Nächste Überarbeitung
Vorhergehende Überarbeitung
spielplatz:student:42:convertnumber [2026/02/22 17:34] – angelegt 89.246.128.70spielplatz:student:42:convertnumber [2026/02/25 13:05] (aktuell) 61.8.146.42
Zeile 1: Zeile 1:
 +[[spielplatz:student:42:start|back to start 42]] or [[cowork:schulung:42:start|Notizen Termine 42 (nur lesbar)]]
 +====== c Sourcecode ======
 +
 +
 +<code c convertbase.c>
 +//cc -Wall -Wextra -Werror ft_putnbr_base.c
 +// tamakhlo@c4a2c8 ~/.ssh/c04/ex04
 +
 +/* ************************************************************************** */
 +/*                                                                            */
 +/*                                                        :::      ::::::::   */
 +/*   ft_putnbr_base.c                                   :+:      :+:    :+:   */
 +/*                                                    +:+ +:+         +:    */
 +/*   By: tamakhlo <tamakhlo@student.42berlin.d      +#+  +:+       +#       */
 +/*                                                +#+#+#+#+#  +#          */
 +/*   Created: 2026/02/22 16:15:31 by tamakhlo          #+#    #+#             */
 +/*   Updated: 2026/02/22 20:32:17 by sgehrman         ###   ########.fr       */
 +/*                                                                            */
 +/* ************************************************************************** */
 +#include <unistd.h>
 + 
 +char    convert(int num, int base);
 +void convert_num(int num, int base, char *res);
 +int main(void)
 +{
 + int i;
 + int b;
 + char tnum[42] = "";
 + 
 + i = 15;
 + b = 16;
 +// *tnum = ""; 
 + convert_num(6, 10, tnum); // index 0
 + convert_num(1, 2, tnum);
 + convert_num(12, 16, tnum);
 + convert_num(11, 16, tnum);
 + convert_num(10, 16, tnum);
 + convert_num(10, 16, tnum);
 + convert_num(10, 16, tnum);
 +
 + convert_num(i, b, tnum); // index 7
 + write (1, "\n-", 2);
 + write (1, &tnum[7] ,1);
 + write (1, "-\n", 2);
 + return (0);
 +}
 + 
 +char digit(int num, int base)
 +{
 + int result;
 +
 + 
 + result = "0123456789ABCDEF"[num%base];
 + //write (1, &result ,1);
 + return (result+'\0');
 +}
 +void convert_num(int num, int base, char *res)
 +{
 + //int counter;
 + int usedlen;
 + char c;
 + char *pc;
 + 
 + usedlen = 0;
 +
 + while(res[usedlen] != '\0')
 + usedlen++;
 +
 + write (1, &res[usedlen] ,1);
 + c = usedlen + '0'; // usedlen is 2 index ist 1
 + write (1, "\n", 1);
 + write (1, &c, 1);  // '2'
 + write (1, "<-len\n=", 7);
 +// because of usedlen++ = 3 but next-index = 1 Value like last call convert_num()
 + pc = res;
 + while(*pc != '\0')
 + write (1, pc++, 1);   // all digits in res display in terminal in al line so far
 +
 + //while (base <= num)
 + {
 + res[usedlen] = digit(num,base);
 + //write (1,&res[counter] ,2);
 + //usedlen++;
 + }
 + res[usedlen +1] = '\0';
 +// return(res);
 +}
 +</code>
 +
 +----
 +====== Überschrift ======
 +
 +Hi Ines platziere den code hier im code block!!!
 +<code c sourcecodeInes.c>
 +
 +
 +
 +</code>