La conversion d'une ligne de code à partir de c en c++

0

La question

#include <iostream>
#include <stdio.h>
using namespace std;

int item, jumlahbarang, total = 0, total_belanja = 0, uang, kembalian, sum = 1, memory[100], memory_jumlah[100];
    const char* aitem[11] = { "fillthe0","ITEM 1", "ITEM 2"};
    string repeat;
    int price1= 53000;
    int price2= 76000;

int main(){
    cout << "               | ID   | Nama Barang                     | Harga Barang |" << endl;
    cout << "               |------|---------------------------------|--------------|" << endl;
    cout << "               | 1.   | ITEM 1                          | Rp. 53000    |" << endl;
    cout << "               | 2.   | ITEM 2                          | Rp. 76000    |" << endl;

while (repeat.compare("n") != 0) {
    label:
        cout << " Input item id : ";
        cin >> item;
        memory[sum] = item;
        if (item == 1) {
            cout << " Item anda : " << aitem[1] << endl;
            cout << " How much item do you want ot buy? : ";
            cin >> jumlahbarang;
            memory_jumlah[sum] = jumlahbarang;
            sum++;
            total = price1 * jumlahbarang;
            total_belanja = total_belanja + total;
        }
        else if (item == 2) {
            cout << " Item anda : " << aitem[2] << endl;
            cout << " How much item do you want ot buy? : ";
            cin >> jumlahbarang;
            memory_jumlah[sum] = jumlahbarang;
            sum++;
            total = price2 * jumlahbarang;
            total_belanja = total_belanja + total;
        }

        cout << " Beli Lagi?(y/n)";
        cin >> repeat;
    }

    cout << "\n\n Struk Belanja\n";
    cout << " -------------\n";
    cout << " Item list : \n";
    for (int i = 1; i < sum; i++) {
        printf(" - %dx %s\n", memory_jumlah[i], aitem[memory[i]]);
    }
return 0;
}

le code ci-dessus est un code pour faire un recipt, le problème que j'ai est je ne peux pas convertir" printf(" - %dx %s\n", memory_jumlah[i], aitem[memory[i]]); "à partir de c languange en c++ , je ne sais pas quel code dois-je utiliser pour que. j'ai essayé getline, le transformant en de cout, il ne marche pas encore.

de ce que je sais, c++ utilise cout << au lieu de printf, ant c++ ne pas utiliser %d %s.

c++
2021-11-24 05:49:04
3

La meilleure réponse

2

Qui a dit que vous ne pouvez pas utiliser printf en c++?

Code C :

printf(" - %dx %s\n", memory_jumlah[i], aitem[memory[i]]);

Le code C++:

printf(" - %dx %s\n", memory_jumlah[i], aitem[memory[i]]);

Le résultat serait le même, parce que le C++ supporte à la fois le cout, cin et printf, scanf.

2021-11-24 06:54:40

Eh bien, vous pouvez l'utiliser, mais stdio.h est dangereux de merde de la bibliothèque et doit être évitée en C et C++ à la fois... si si, C++ vous donne une meilleure alternative, utiliser.
Lundin

@Lundin couteaux peut être assez dangereux, mais aussi très utile. Peut-être que l'on devrait interdire les couteaux et les printf et langages tels que le C, car ils pourraient être dangereux. Alors que je suis d'accord que printf ne doit pas être utilisé en C++, je suis en désaccord que ça ne devrait pas être utilisé en C, j'ai tendance à faire plus pour apprendre à utiliser le bon outil pour le travail.
autistic
0
cout << " - " << memory_jumlah[i] << "x " << aitem[memory[i]] << endl;

Cela devrait fonctionner.

2021-11-24 06:43:28
-2

c++ est sur-ensemble de c, donc si vous êtes d'écrire n'importe quel code en c, alors il est valide d'un code c++ donc il n'y a pas besoin de convertir en c++ comme je l'ai compilé ton programme, il fonctionne parfaitement bien.

C'est le résultat quand je compile ce code avec l'extension de c++:

1

2021-11-24 15:14:54

C++ n'est pas un sur-ensemble de c. Les exemples typiques sont la nécessité de jeter le résultat de malloc et l'automatique typedef pour les structures/syndicats/enums. Il y a d'autres problèmes comme le c++ ayant des mots-clés supplémentaires et manque un peu de C99 de ses fonctionnalités.
martinkunev

C'est près d'un sur-ensemble de C, dans les 98% de code source C compiler en C++, avec peu ou pas de modification. Son intention d'être un sur-ensemble de C est la façon dont C++ a obtenu son nom.
Jeremy Friesner

Dans d'autres langues

Cette page est dans d'autres langues

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................