The -merkki C-ohjelmointikielessä tunnetaan nimellä 'Carriage Return', joka auttaa siirtämään kohdistimen nykyisen rivin alkuun siirtymättä eteenpäin tai hyppäämättä seuraavalle riville.
Joissakin tapauksissa saatat haluta lisää tekstiä lisäämättä uutta riviä konsolin tai pääteikkunan nykyiselle riville. Tietyissä olosuhteissa voit kirjoittaa uutta tekstiä olemassa olevan sisällön päälle käyttämällä -merkki tuoda kohdistimen takaisin rivin alkuun.
Esimerkkikoodinpätkä:
lateksi fonttikoot
#include int main() { int j; for (j = 0; j<10; j++) { printf('loading: %d ', j); fflush(stdout); sleep(1); } printf(' '); return 0; < pre> <p> <strong>Output:</strong> </p> <pre> Loading: 0 Loading: 1 Loading: 2 Loading: 3 Loading: 4 Loading: 5 Loading: 6 Loading: 7 Loading: 8 Loading: 9 </pre> <p> <strong>Explanation:</strong> </p> <p>This program counts from <strong> <em>0 to 9</em> </strong> , but instead of producing new lines after each iteration of the loop, it just overwrites the previous output. In order for the subsequent iteration of the loop to begin replacing the previous output from the left side of the console window, the <strong> <em>' '</em> </strong> character brings the cursor back to the beginning of the line.</p> <h4>Note: The output buffer is flushed using the fflush(stdout) call, causing the output to be immediately printed to the console. The goal of using ' ' to update the output in real time would be defeated without this call if the output was postponed until the end of the program.</h4> <p>There is some other additional information about <strong> <em>' '</em> </strong> in C programming which are as follows:</p> <ul> <li>A single character in C is represented by the character literal <strong> <em>' '</em> </strong> . It has the same <strong> <em>ASCII code</em> </strong> as the <strong> <em>carriage return character</em> </strong> in other computer languages, which is <strong> <em>13</em> </strong> , making it easy to identify.</li> <li>Complex output formatting can be created by combining the <strong> <em>' '</em> </strong> character with other control characters like <strong> <em>' ' (newline)</em> </strong> and <strong> <em>' ' (tab)</em> </strong> .</li> <li>To ensure that the output is quickly provided to the console after updating the output on the console or terminal window with <strong> <em>' '</em> </strong> , it's essential to flush the output buffer with <strong> <em>fflush(stdout)</em> </strong> . If not, the previous output could be cached in the output buffer and delayed from being displayed.</li> <li>The <strong> <em>' '</em> </strong> command can occasionally be used to output animated or dynamic text on the console. For instance, you could use <strong> <em>' '</em> </strong> to build a progress bar that updates while a lengthy task is finished.</li> <li>When creating custom console output in C, <strong> <em>' '</em> </strong> is frequently used in conjunction with other console output functions like <strong> <em>puts()</em> </strong> and <strong> <em>printf()</em> </strong> to control the output formatting.</li> <li>In <strong> <em>command-line interfaces (CLIs)</em> </strong> and other text-based programs, the update symbol <strong> <em>' '</em> </strong> is frequently used to show the status of an action, such as <strong> <em>downloading a file, transferring data</em> </strong> , or <strong> <em>compiling code</em> </strong> .</li> <li>The <strong> <em>' '</em> </strong> is particularly helpful for updating a single line of output without scrolling the entire terminal window. Working with large datasets or lengthy procedures can benefit from this.</li> <li>Additional special characters in C, such as <strong> <em>'' (backspace), 'v' (vertical tab),</em> </strong> and <strong> <em>' ' (return)</em> </strong> , can be used to modify the output formatting in addition to <strong> <em>' '</em> </strong> . These additional special characters shift the cursor back one character and down one line, respectively.</li> <li>In addition to being used in C programming, <strong> <em>' '</em> </strong> can also be used to control console output in <strong> <em>Java</em> </strong> , <strong> <em>Python</em> </strong> , and <strong> <em>Ruby</em> </strong> .</li> <li>Making ensuring that the new output is the same length as the previous output or greater is crucial when using <strong> <em>' '</em> </strong> to refresh the output on the console. Characters from the previous output that were not overwritten if the new output is shorter than the old output may cause output to be distorted or inaccurate.</li> <li>The <strong> <em>' '</em> </strong> does not clear the line or remove any text; it just advances the cursor to the start of the current line. If you want to format the line before writing new output, use <strong> <em>' '</em> </strong> and other control characters, like <strong> <em>spaces or backspaces</em> </strong> , to replace the old text with blank spaces.</li> <li>The <strong> <em>' '</em> </strong> can be used to modify both input and output formatting in conjunction with other terminal output functions like <strong> <em>scanf()</em> </strong> and <strong> <em>gets()</em> </strong> . For instance, use <strong> <em>' '</em> </strong> to make a command-line prompt that changes as the user types input.</li> </ul> <p> <strong>Example:</strong> </p> <p>Another code snippet demonstrating the use of <strong> <em>' '</em> </strong> in C to create an animated loading spinner:</p> <pre> #include #include #include int main() { int j; char raj[] = '\-+{}\'; for (j = 0; j<10; 100 j++) { printf('loading %c ', spinner[j % 4]); fflush(stdout); usleep(100000); sleep for milliseconds } printf('done!!!!!! '); return 0; < pre> <p> <strong>Output:</strong> </p> <pre> Loading Loading - Loading + Loading { Loading Loading - Loading + Loading { Loading Loading - Done!!!!!! </pre> <hr></10;></pre></10;>
Selitys:
Tämä ohjelma laskee alkaen 0-9 , mutta sen sijaan, että se tuottaisi uusia rivejä silmukan jokaisen iteraation jälkeen, se vain kirjoittaa edellisen tulosteen päälle. Jotta silmukan myöhempi iteraatio alkaisi korvata edellisen tulosteen konsoliikkunan vasemmalta puolelta, ' ' merkki tuo kohdistimen takaisin rivin alkuun.
Huomautus: Tulostuspuskuri tyhjennetään fflush(stdout)-kutsulla, jolloin tulos tulostetaan välittömästi konsoliin. Tavoite käyttää -komentoa lähdön päivittämiseen reaaliajassa epäonnistuisi ilman tätä kutsua, jos tulostetta lykättäisiin ohjelman loppuun.
Asiasta on muutakin lisätietoa ' ' C-ohjelmointiin, jotka ovat seuraavat:
- Yksittäinen merkki C:ssä esitetään merkkiliteraalilla ' ' . Siinä on sama ASCII-koodi kuin vaunun paluuhahmo muilla tietokonekielillä, mikä on 13 , mikä helpottaa tunnistamista.
- Monimutkainen tulosteen muotoilu voidaan luoda yhdistämällä ' ' hahmo muiden ohjausmerkkien kanssa, kuten ' ' (uusi rivi) ja ' ' (välilehti) .
- Varmistaaksesi, että tulos toimitetaan nopeasti konsoliin sen jälkeen, kun konsolin tai pääteikkunan lähtö on päivitetty ' ' , on välttämätöntä huuhdella lähtöpuskuri fflush (stdout) . Jos ei, edellinen tulos voidaan tallentaa välimuistiin lähtöpuskuriin ja viivästää sen näyttämistä.
- The ' ' komentoa voidaan toisinaan käyttää animoidun tai dynaamisen tekstin tulostamiseen konsoliin. Voit esimerkiksi käyttää ' ' rakentaa edistymispalkki, joka päivittyy, kun pitkä tehtävä on valmis.
- Kun luot mukautetun konsolin tulosteen C:ssä, ' ' käytetään usein yhdessä muiden konsolin lähtötoimintojen, kuten laittaa () ja printf() ohjata tulosteen muotoilua.
- Sisään komentoriviliittymät (CLI:t) ja muut tekstipohjaiset ohjelmat, päivityssymboli ' ' käytetään usein näyttämään toiminnon tilaa, kuten tiedoston lataaminen, tietojen siirto , tai koodin kääntäminen .
- The ' ' on erityisen hyödyllinen yksittäisen rivin päivittämiseen ilman koko pääteikkunan vierittämistä. Suurien tietojoukkojen tai pitkien prosessien kanssa työskentely voi hyötyä tästä.
- Muita erikoismerkkejä C:ssä, kuten '' (askelpalautin), 'v' (pystysarkain), ja ' ' (paluu) , voidaan muuttaa tulosteen muotoilua lisäksi ' ' . Nämä lisäerikoismerkit siirtävät kohdistinta yhden merkin taaksepäin ja riviä alaspäin.
- Sen lisäksi, että sitä käytetään C-ohjelmoinnissa, ' ' voidaan käyttää myös ohjaamaan konsolin lähtöä Java , Python , ja Rubiini .
- Käytettäessä on tärkeää varmistaa, että uusi tuloste on yhtä pitkä kuin edellinen tai suurempi ' ' päivittääksesi konsolin tulosteen. Edellisen lähdön merkit, joita ei kirjoitettu päälle, jos uusi lähtö on lyhyempi kuin vanha, voivat aiheuttaa tulosteen vääristymiä tai epätarkkoja.
- The ' ' ei tyhjennä riviä tai poista tekstiä; se vain siirtää kohdistimen nykyisen rivin alkuun. Jos haluat muotoilla rivin ennen uuden tulosteen kirjoittamista, käytä ' ' ja muut ohjausmerkit, kuten välilyönnit tai askelpalauttimet , korvataksesi vanhan tekstin tyhjillä välilyönneillä.
- The ' ' voidaan käyttää sekä tulo- että lähtömuotoilun muokkaamiseen yhdessä muiden päätteen lähtötoimintojen, kuten scanf() ja saa () . Esimerkiksi käyttää ' ' tehdäksesi komentorivikehotteen, joka muuttuu käyttäjän kirjoittaessa syötettä.
Esimerkki:
Toinen koodinpätkä, joka osoittaa käytön ' ' C:ssä animoidun latauspyörän luomiseksi:
#include #include #include int main() { int j; char raj[] = '\-+{}\'; for (j = 0; j<10; 100 j++) { printf(\'loading %c \', spinner[j % 4]); fflush(stdout); usleep(100000); sleep for milliseconds } printf(\'done!!!!!! \'); return 0; < pre> <p> <strong>Output:</strong> </p> <pre> Loading Loading - Loading + Loading { Loading Loading - Loading + Loading { Loading Loading - Done!!!!!! </pre> <hr></10;>
10;>10;>