Отговори на тема  [ 21 мнения ]  Отиди на страница Предишна  1, 2
Въпрос за конвертиране в Ц 
Автор Съобщение
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Съб Юли 22, 2006 9:50 pm
Мнения: 1638
Мнение 
Какво пише в учебника:
ASCII - 6,7 или 8 битов код стандартизиран най-общо като код за обмяна на информация.
Символите се делят най-общо в 2 групи - графични и управляващи.Кода на символа представлява 8 разрядба двоична информация.Първата половина от всички възможни комбинации (00 - 7F) съдържа 1-вата страница на кодовата таблица.В нея се съдържат латински букви,управляващи символи,десетични цифри и др.Втората полвина на двоичните комбинации (80-FF)съответствува на втората страница на кодовата таблица,която съдържа букви на кирилица,символи за изчертаване гръцки букви и др.

И функцията като ти връща 8 битово число с написаното по-горе предполагам че ще се ориентираш.


Чет Май 10, 2007 10:09 pm
Профил
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Пет Сеп 23, 2005 10:54 pm
Мнения: 39
Мнение 
Символите ги оправихме :) сега изникна друг проблем.
имам една структура и искам да копирам низ в елемент на структурата.Да ама не става.(давам всичко опростено):
Код:
#include <stdio.h>
#include<string.h>
void main(){
struct firma{
        char reg[8]
}*n;
char s[8];
gets(s);
strcpy(n->reg,s);//ето на този ред нещо се сбъгясва
printf("ne stigame do tuk");
}

Проблемът е, че програмата стига до копирането на низовете(не знам изпълнява се или не) и последния ред с принтф не се изпълнява. Просто програмата прекъсва... :(Мъчих го и с strncpy и с memcpy, не става и не става...

_________________
Най-лошото, което може да се случи на две точки, е да не лежат на една права.


Вто Май 15, 2007 6:06 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Съб Юли 22, 2006 9:50 pm
Мнения: 1638
Мнение 
/* strcpy example */
#include <stdio.h>
#include <string.h>

int main ()
{
char str1[]="Sample string";
char str2[40];
char str3[40];
strcpy (str2,str1);
strcpy (str3,"copy successful");
printf ("str1: %s\nstr2: %s\nstr3: %s\n",str1,str2,str3);
return 0;
}


:)


Вто Май 15, 2007 6:34 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пет Яну 19, 2007 9:16 am
Мнения: 1063
Местоположение: путинофили: "иди н***й"
Мнение 
Dr.UmriGo написа:
Символите ги оправихме :) сега изникна друг проблем.
имам една структура и искам да копирам низ в елемент на структурата.Да ама не става.(давам всичко опростено):
Код:
#include <stdio.h>
#include<string.h>
void main(){
struct firma{
        char reg[8]
}*n;
char s[8];
gets(s);
strcpy(n->reg,s);//ето на този ред нещо се сбъгясва
printf("ne stigame do tuk");
}

Проблемът е, че програмата стига до копирането на низовете(не знам изпълнява се или не) и последния ред с принтф не се изпълнява. Просто програмата прекъсва... :(Мъчих го и с strncpy и с memcpy, не става и не става...


земи прочени някоя книга за C - че и ние да не се мъчиме (да ти четеме постовете) :)

запитай се кВо е поинтер ('указател' по нашенски), кВо си дефинирал с '*n' и къде на майната си сочи :idea:

сега ако някой ти напише: махни "*"-та, смени "->" с "." ... имаш шанс да стигнеш до където искаш ... но ще знаеш пак толкова !


Вто Май 15, 2007 6:35 pm
Профил
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Пет Сеп 23, 2005 10:54 pm
Мнения: 39
Мнение 
мерси за съвета за прочитането на някоя книжка! Прочел съм, а възникването на въпроси е неотменно свързано с обучението на всеки! Ако толкова много се дразниш- просто не отговаряй!
В крайна сметка предаването на нулевия елемент на масив е като предаване на указател към масива(така пише :)). Аз опитах да предам указател към масив от структура. Защо не става- не разбрах. Това е прототипа на strnspy():
char *strcpy(char *dest, const char *src);

_________________
Най-лошото, което може да се случи на две точки, е да не лежат на една права.


Чет Май 17, 2007 2:45 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Пет Яну 19, 2007 9:16 am
Мнения: 1063
Местоположение: путинофили: "иди н***й"
Мнение 
Dr.UmriGo написа:
мерси за съвета за прочитането на някоя книжка! Прочел съм, а възникването на въпроси е неотменно свързано с обучението на всеки! Ако толкова много се дразниш- просто не отговаряй!
В крайна сметка предаването на нулевия елемент на масив е като предаване на указател към масива(така пише :)). Аз опитах да предам указател към масив от структура. Защо не става- не разбрах. Това е прототипа на strnspy():
char *strcpy(char *dest, const char *src);


вземи пак да прочетеш книжката !

погледни и какво съм написал в по-горния си пост!

'n' ти е дефинирано като указател, но не сочи никъде (понеже не си го схванал то го пиша по-ясно: намайнатаси==никъде :)) т.е. няма заделена памет към която да сочи (ако беше прочел за указателите - щеше да си наясно че ВИНАГИ указателя трябва да сочи съм валиден блок памет - ти имаш грижата за това!)!


написал съм ти и:

Код:
сега ако някой ти напише: махни "*"-та, смени "->" с "." ... имаш шанс да стигнеш до където искаш ... но ще знаеш пак толкова !


ако ме беше послушал : махни "*"-та, смени "->" с "."
щеше да получиш:

void main(){
struct firma{
char reg[8]
} n;
char s[8];
gets(s);
strcpy(n.reg,s);//ето на този ред нещо се сбъгясва
printf("и щеше да стигнеш do tuk ако не въвеждаш стринг по дълъг от 7 символа:)");
}

така n има заделена памет (структура а не указател!)

ако държиш да ползваш указател:

void main(){
typedef struct {
char reg[8]
} firma;

firma nnn;
firma *n;
char s[8];
gets(s);
n = &nnn; // n -> сочи към реална памет!
strcpy(n->reg,s);//ето на този ред нещо се сбъгясва
printf("и щеше да стигнеш do tuk ако не въвеждаш стринг по дълъг от 7 символа:)");
}

имаш много да четеш - не е заяждане просто съвет :)


Чет Май 17, 2007 3:18 pm
Профил
Покажи мненията от миналия:  Сортирай по  
Отговори на тема   [ 21 мнения ]  Отиди на страница Предишна  1, 2

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 3 госта


Вие не можете да пускате нови теми
Вие не можете да отговаряте на теми
Вие не можете да променяте собственото си мнение
Вие не можете да изтривате собствените си мнения
Вие не можете да прикачвате файл

Търсене:
Иди на:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.
Хостинг и Домейни