---
title: "Programmering A :)"
type: "forum-thread"
url: "https://www.webforum.nu/amne/c-cpp/51500-programmering-a"
topic: "C/C++"
topic_url: "https://www.webforum.nu/amne/c-cpp"
author: "voigtann1"
published: "2002-08-27T20:06:53.000Z"
updated: "2002-09-03T10:48:40.000Z"
replies: 15
views: 537
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/c-cpp/51500-programmering-a"
---

# Programmering A :)

## #1 — voigtann1, 2002-08-27T20:06Z

har just börjat.. men tycker det e as kul.. men hur får man å ä och ö så att det fungera perfekt? jag får bara fula tecken :( jag kör mycket enkla koder nu ibörjan (läser i en bok)

```
#include <iostream.h>
#include <conio.h>
void main()
{
        int tal1;
        clrscr();
        cout << "Skriv in ett heltal: ";
        cin  >> tal1;
        cout << "Om jag adderar 5 blir resultatet: " << (tal1+5) << endl
             << "Om jag subtraherar 5 blir resultatet: " << (tal1-5)
             << endl
             << endl
             << "Tryck någon tangent för förtsättning!";
        getch();
}
```

Permalänk: https://www.webforum.nu/p/51500

## #2 — Marcus E, 2002-08-27T21:34Z

Det finns olika alternativ.
1\. Använd Windows-funktionen CharToOem. Den konverterar din sträng från nuvarande teckentabell till kommandopromptens teckentabell (OEM).
2\. Kompilera programmet som Unicode och använd Unicode-funktioner för att skriva ut text. T.ex. WriteConsole.
3\. Skriv koden i en editor och spara som OEM (t.ex. en DOS-editor).
4\. Använd inte svenska tecken.

Alternativ 1 och 2 är att föredra. Fast för nybörjare är nog alternativ 4 enklast.

Permalänk: https://www.webforum.nu/p/764173

## #3 — Coper, 2002-08-27T21:41Z

I ställer för att skriva å så skriver du \\x86
Och så vidare........

å = \\x86
Å = \\x8F
ä = \\x84
Ä = \\x8E
ö = \\x94
Ö = \\x99

Kan till lägga att man skriver ut hexe tal genom att skriva
\\xnn
då nn är hexe talet.....

Permalänk: https://www.webforum.nu/p/764181

## #4 — Marcus E, 2002-08-27T22:00Z

Sedan så finns det ett femte alternativ som jag inte rekommenderar alls. Det är det som Cooper nyss skrev. ;)

Det går inte att se vad det är för tecken.
Det är fult.
Det är jobbigt. 
Det gäller endast text du skriver och inte text som användaren skriver in.
Det gäller inte alla andra tecken som man kan tänkas använda. (€, ü, é etc.)

Permalänk: https://www.webforum.nu/p/764188

## #5 — Coper, 2002-08-27T22:31Z

> **Marcus E skrev:**
>
> 1\. Använd Windows-funktionen CharToOem. Den konverterar din sträng från nuvarande teckentabell till kommandopromptens teckentabell (OEM).

Kan du förklar hur man gör det....

Men sen om man läser Programmering A så klara men sig bra med hexe systemat även om det inte blir lätt att läsa koden. Mitt förslag står i den boken som vi har i skolan.

Permalänk: https://www.webforum.nu/p/764208

## #6 — Marcus E, 2002-08-27T22:53Z

> **Cooper skrev:**
>
> Kan du förklar hur man gör det....

Ja, visst.

```
#include <windows.h>

char out[] = "Hej på dig!";
CharToOem(out, out);
cout << out;
```

Obsarvera att detta endast fungerar när man kompilerar som ANSI och att det måste gå att skriva till bufferten.

char \*out = "Hej på dig!";
går alltså inte. Eftersom texten kommer lagras skrivskyddad då.

Permalänk: https://www.webforum.nu/p/764217

## #7 — PeW, 2002-08-28T12:11Z

Varför envisas med svenska tecken?  Inom programmering används ju uteslutande engelska och varför inte köra så från början? ...  ;)

Permalänk: https://www.webforum.nu/p/764482

## #8 — Coper, 2002-08-28T13:37Z

Tack Marcus E...
Det fungerade mycket bra.

PeW -\> För att det är mycket mer praktiskt om man har svenska tecken i ett svenskt program....:OO 
Tycker jag i alla fall :)

Permalänk: https://www.webforum.nu/p/764518

## #9 — developer, 2002-08-28T14:00Z

> **Marcus E skrev:**
>
> char \*out = "Hej på dig!";
> går alltså inte. Eftersom texten kommer lagras skrivskyddad då.

Nej, "out" blir skrivbar i det fallet. För att få den "skrivskyddad" krävs const framför.

Permalänk: https://www.webforum.nu/p/764543

## #10 — Marcus E, 2002-08-28T14:50Z

Nej

Developer:
Nej, när du skapar en pekare till en textsträng inom citationstecken lagras den skrivskyddad. Det går att byta ut innehållet, men det kommer att ge ett körningsfel (access violation).

Jag är dock osäker på om detta endast gäller Visual C++ kompilator.

Permalänk: https://www.webforum.nu/p/764580

## #11 — developer, 2002-08-28T15:20Z

Marcus, du har såklart helt rätt. Vet inte vad som flög i mig... ;)

Tipset med CharToOem() var förresten lysande, hade ingen aning om det. Jag har alltid (nja...) kört med Unicode, men default-fonten i NT visar ju ändå inte åöö.

Permalänk: https://www.webforum.nu/p/764605

## #12 — Sang-drax, 2002-08-28T16:47Z

Det bästa sättet är faktiskt att göra så här:
\#define aa "\\x86" 
\#define ae "\\x84"

Sedan skriver man strängen så här:
char\* str = "Textstr"ae"ng";

Permalänk: https://www.webforum.nu/p/764658

## #13 — Beatbox, 2002-08-28T16:52Z

Unicode borde ju lösa problemet.

Permalänk: https://www.webforum.nu/p/764665

## #14 — plelkes, 2002-09-03T06:51Z

Jag är absolut nybörjare på porgramering, men har redan drabbats av att inte kunnat skriva svenska tecken....

Antag att jag vill ha nedanstående kodsnutt rättstavat:

```
printf("mat in din längd här:%c\n");
```

- kan ngn förlkara steg för steg hur jag lyckas med detta?/tack

 
Jag kör:

1. win 98 SE - svensk
2. MS Visual C++ 6,0 pro - engelska

Permalänk: https://www.webforum.nu/p/770923

## #15 — Marcus E, 2002-09-03T08:53Z

Utskriven, menar du? Rättstavning är något helt annat. Använd printf istället för cout i mitt [tidigare exempel](http://www.webforum.nu/showthread.php?s=&postid=424482#post424482).

Permalänk: https://www.webforum.nu/p/771025

## #16 — PeW, 2002-09-03T10:48Z

[Denna](http://www.cs.chalmers.se/~skanshol/cpp_dir/exempel/iodos.h) header kan ju för enkelhetens skull inkluderas och användas om man nu bara sitter och labbar i dos/cmd **och** envisas med svenska tecken.

Permalänk: https://www.webforum.nu/p/771097

---

Tråden på webben: https://www.webforum.nu/amne/c-cpp/51500-programmering-a
