æè¿æ¯ä¸ªåå¦è
ï¼è¿ä¸ªæçä¸å¤ªæï¼
å¯ä»¥ç¨ getchar () è¾å
¥åï¼
ææ³è¾å
¥ä¸å¥è¯ï¼æ¯å¦è¯´ âI am a boy !âä½æ¯äºå
æä¸å®ä¹è¿å¥è¯çé¿åº¦ï¼ç±é®çè¾å
¥ï¼ç¶åè¾åºæç 究è¿å¥è¯ä¸çå符ï¼
#include
#include
#define STRLEN 20
void main()
{
char *arr = (char *)malloc(sizeof(char) * STRLEN); // ä¿åå符串ï¼åå§é¿åº¦è®¾å®ä¸ºSTRLEN
char input; // ä¿åä¸ä¸ªä»è¾å
¥æµä¼ å
¥çå符
int strSize = STRLEN; // 计ç®arrå符串è½åå¨çæ大é¿åº¦
int strLength = 0; // åå¨arrå·²ç»åå¨çå符串é¿åº¦
while ((input = getchar()) != '\n') // ä»è¾å
¥æµè¯»åä¸ä¸ªå符ï¼å¦æè¿ä¸ªå符ä¸æ¯\n
{
arr[strLength] = input; // å°è¿ä¸ªå符æ¾å
¥arr
++strLength; // arrå·²åå¨é¿åº¦å 1
if (strLength == strSize) // å¦æå符串é¿åº¦å·²ç»è¶
è¿äºarrçæ大è½åå¨é¿åº¦
{
arr = (char *)realloc(arr, strSize + STRLEN); // å¨åæ¥arrç大å°ä¸ï¼éæ°ç³è¯·ä¸ä¸ªå¤STRLENé¿åº¦ç空é´
strSize += STRLEN; // å°arrè½åå¨çæ大é¿åº¦æ´æ°
}
}
arr[strLength] = '\0'; // å¨å符串æ«å°¾å '\0'以示ç»æ
return;
}
æå¸®ä½ æ代ç æ¹å¥½äºãå°±æ¯æ¢è¡è¯å¥å°±è¡
æè¿ä¸ªä»£ç æ¯è°ç¨äºå¨æç³è¯·ï¼å¦æä½ åªæ¯é便è¾å
¥ä¸å¥è¯ï¼
é£æå»ºè®®ä½ ï¼ç´æ¥å®ä¸ä¸ªchar arr[100]å°±å¾äºãå¾å¤§äºå®ä¹
#include
void main()
{
char arr[100]; // ä¿åå符串ï¼é¿åº¦è®¾å®ä¸º100
char input; // ä¿åä¸ä¸ªä»è¾å
¥æµä¼ å
¥çå符
int strLength = 0;
getline();
while ((input = getchar()) != '\n') // ä»è¾å
¥æµè¯»åä¸ä¸ªå符ï¼å¦æè¿ä¸ªå符ä¸æ¯\n
{
arr[strLength] = input; // å°è¿ä¸ªå符æ¾å
¥arr
++strLength; // arrå·²åå¨é¿åº¦å 1
}
arr[strLength] = '\0'; // å¨å符串æ«å°¾å '\0'以示ç»æ
return;
}