1. 什麼是字元串 字元串的存儲是怎樣的
字元串是一對雙撇號括起來的字元序列,字元串的存儲肆李肆給你舉一個例子就知道了:
字元串常量「」,占內存單元是六個裂轎,而不是五個,因為C規定,以字元「\0」作為字元串結束標志,但在輸出是不輸出「擾毀\0」.
就解釋這么多,希望對你有所幫助。
2. c 語言 字元串的存儲
因為你剛剛用for循環,必須執行20次輸入才形,如果直接用輸入字元串就不必一定輸入20個字元了:)
#include <歲孝stdio.h>
#include <string.h>
#define N 20
void main()
{
char str[N];
scanf("賣知%s", &str); //中雀消你的程序有個錯誤,少了&
printf("%s", str);
}
3. char類型變數能不能儲存字元串
不能!
%c只能存儲一個字元!
%s能存儲一串字元!
4. 請問內存中存儲一個字元串的原理...
內存中所有字元型數據都是以ASCII碼存儲的。a在內存中對應的也就是ASCII的97,二進制:1100001。
字元串的存儲機制是旁晌嘩數組形式排列,根據字元串長度,配置0到N+1的空間,讀取時,內謹敬存中的字元串是通過運行數組下標來獲取字元。
5. 字元串通常採用的兩種存儲方式是什麼
字元串的兩種最基本的存儲方式是順序存儲方式和鏈接存儲方式,選第三個啦
6. c語言中怎麼存一個字元串
在c語言中存儲一個字元串,一般有兩種方法,一種是字元指針,一種是使用字元數組。比如:
constchar*str="hello";//使用字元串指針
constcharstr[]="hello";//使用字元數組
如果保存的字元串,需要修改。一般使用字元數組。比如:
charpath[256]="c:\windows\";
strcat(path,"system32");
7. 為什麼一個指針變數可以存儲一串字元
指針並不是真的檔雀可以存儲字元串,而是存儲了字元串首字母a的地址,其實每個字元串都是以'/0'為結束符,當用中蠢舉%s輸出時,賣碧在輸出前一個字元的同時指針會自動跳到下個字元的地址處,直到遇到'/0'停止,所以%s可以輸出一個字元串.
8. 為什麼一個指針變數可以存儲一串字元
你問:「為什麼可以直接賦字元串呢?」
問的很好。在你的例子檔首裡面"abc"是一個激改常量字元串,程序運行時常量字元串"abc"會得明蠢判到一個內存地址,char
*p="abc"的語意是將p指向這個地址。
因此,本質上說,正如你所理解的,的確是將地址賦值給指針。
9. 如何在一個數組中存儲一個字元串的長度
可以將整數當做字元串(字元串長度不超過10)接收,然後反向輸出字元數組元素即可。
字元串實際長度可以用strlen函數來計算。
方法程序如下:
#include<stdio.h>
#include<string.h>
main()
{char a[10];int i,j;
scanf("%s",a);
j=strlen(a);
for(i=j-1;i>=0;i--)
printf("%c",a[i]);
printf(" ");}
(9)存儲一串字元擴展閱讀:
C語言高效編程技巧:
一:以空間換時間
計算機程序中最大的矛盾是空間和時間的矛盾,那麼,從這個角度出發逆向思維來考慮程序的效率問題
二:數學方法解決問題
數學是計算機之母,沒有數學的依據和基礎,就沒有計算機發展,所以在編寫程序的時候,採用一些數學方法會對程序的執行效率有數量級的提高。
三:使用位操作
實現高效的C語言編寫的第三招----使用位操作,減少除法和取模的運算。
在計算機程序中,數據的位是可以操作的最小數據單位,理論上可以用「位運算」來完成所有的運算和操作。一般的位操作是用來控制硬體的,或者做數據變換使用,但是,靈活的位操作可以有效提高程序運行的效率。
10. C、C++中,怎樣存儲字元串最好
C++里可以用string。無需知道字元串的長橘宴度的
#include<謹鄭iostream>
#include<string>
usingnamespacestd;
intmain()
{
strings;
cin>>s;
cout<<s<<祥伍頌endl;
return0;
}